Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Menghantar Kedua-dua Fail dan Data Rentetan dengan FormData() dan jQuery AJAX?

Bagaimana untuk Menghantar Kedua-dua Fail dan Data Rentetan dengan FormData() dan jQuery AJAX?

Mary-Kate Olsen
Lepaskan: 2024-10-22 14:39:02
asal
1067 orang telah melayarinya

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

Menyiarkan Kedua-dua Fail dan Data Rentetan dengan FormData() dan jQuery AJAX

Ia selalunya perlu untuk menghantar kedua-dua fail dan data rentetan input melalui Permintaan AJAX. Untuk mencapainya menggunakan FormData(), ikuti langkah berikut:

  1. Buat Objek FormData:

    <code class="js">var fd = new FormData();</code>
    Salin selepas log masuk
  2. Tambah Data Fail:
    a. Untuk satu fail:

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

    b. Untuk berbilang fail:

    <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>
    Salin selepas log masuk
  3. Tambah Data Rentetan:

    <code class="js">var other_data = $('form').serializeArray();
    $.each(other_data,function(key,input){
        fd.append(input.name,input.value);
    });</code>
    Salin selepas log masuk
  4. Hantar Data dengan AJAX:

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

Dengan mengikut langkah ini, anda boleh menghantar kedua-dua fail dan data rentetan input dalam objek FormData dan permintaan AJAX yang sama.

Atas ialah kandungan terperinci Bagaimana untuk Menghantar Kedua-dua Fail dan Data Rentetan dengan FormData() dan jQuery AJAX?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan