首頁  >  文章  >  後端開發  >  如何使用 FormData() 和 jQuery AJAX 發送檔案和字串資料?

如何使用 FormData() 和 jQuery AJAX 發送檔案和字串資料?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-10-22 14:39:02887瀏覽

How to Send Both File and String Data with FormData() and jQuery AJAX?

使用FormData() 和jQuery AJAX 發布文件和字串資料

通常需要透過以下方式傳送文件和輸入字串資料AJAX請求。要使用FormData() 實現此目的,請按照以下步驟操作:

  1. 建立FormData 物件:

    <code class="js">var fd = new FormData();</code>
  2. 附加檔案資料:
    a.對於單一檔案:

    <code class="js">fd.append("file", file_data);</code>

    b.對於多個檔案:

    <code class="js">var file_data = $('input[type="file"]')[0].files; // for multiple files
    for(var i = 0;i<file_data.length;i++){
        fd.append("file_"+i, file_data[i]);
    }</code>
  3. 附加字串資料:

    <code class="js">var other_data = $('form').serializeArray();
    $.each(other_data,function(key,input){
        fd.append(input.name,input.value);
    });</code>
  4. 傳送資料AJAX:

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

依照下列步驟,您可以在相同FormData 物件和AJAX 請求中傳送檔案和輸入字串資料。

以上是如何使用 FormData() 和 jQuery AJAX 發送檔案和字串資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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