首頁  >  文章  >  後端開發  >  如何使用JQuery AJAX同時傳輸FormData和字串資料?

如何使用JQuery AJAX同時傳輸FormData和字串資料?

Susan Sarandon
Susan Sarandon原創
2024-10-22 14:27:02585瀏覽

How to Simultaneously Transmit FormData and String Data Using JQuery AJAX?

使用JQuery AJAX 同時傳輸FormData 和字串資料

要使用FormData() 傳送檔案和字串資料,請考慮以下方法字串資料:

建立一個新的FormData 物件:

<code class="javascript">var fd = new FormData();</code>

對於多個文件,從文件輸入中檢索選定的文件:

<code class="javascript">var file_data = $('input[type="file"]')[0].files;</code>

循環遍歷文件並追加使用每個檔案的唯一名稱將它們新增至FormData:

<code class="javascript">for(var i = 0;i<file_data.length;i++){
    fd.append("file_"+i, file_data[i]);
}</code>

接下來,使用jQuery 的.serializeArray() 擷取非檔案輸入資料:

<code class="javascript">var other_data = $('form').serializeArray();</code>

迭代非檔案- 檔案輸入資料並使用.append() 將其附加到FormData:

<code class="javascript">$.each(other_data,function(key,input){
    fd.append(input.name,input.value);
});</code>

最後,使用FormData 作為資料負載配置AJAX 請求:

<code class="javascript">$.ajax({
    url: 'test.php',
    data: fd,
    contentType: false,
    processData: false,
    type: 'POST',
    success: function(data){
        console.log(data);
    }
});</code>

透過以下方式透過這些步驟,您可以透過FormData 和JQuery AJAX 有效地同時傳送檔案和字串數據,確保所有必要的資訊都傳輸到伺服器。

以上是如何使用JQuery AJAX同時傳輸FormData和字串資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn