Dalam pembangunan laman web atau aplikasi, kadangkala perlu melaksanakan fungsi muat turun fail. Muat turun fail biasanya boleh dilakukan dengan menetapkan pengepala respons yang berkaitan pada bahagian pelayan, tetapi jQuery boleh mencapai operasi yang lebih mudah. Artikel ini akan memperkenalkan cara menggunakan jQuery untuk meminta dan memuat turun fail.
Kaedah jQuery.get() ialah kaedah permintaan GET yang mudah di mana anda boleh meminta data daripada pelayan. Apabila meminta muat turun fail, anda boleh menggunakan kaedah ini untuk menghantar pautan muat turun ke pelayan Selepas pelayan menetapkan pengepala respons, fail boleh dimuat turun.
Kod contoh:
$("#downloadBtn").click(function () { var url = "download_file.xlsx"; $.get(url, function(data) { window.location.href = url; }); });
Dalam kod sampel ini, apabila butang muat turun diklik, fail diminta terlebih dahulu daripada pelayan melalui kaedah $.get
. Selepas berjaya mendapatkan fail, tetapkan pautan muat turun penyemak imbas melalui window.location.href
.
kaedah jQuery.ajax() untuk mengendalikan senario permintaan yang lebih kompleks dan mencapai kawalan yang lebih terperinci. Biasanya apabila memuat turun, menggunakan kaedah $.get
boleh memenuhi keperluan anda. Walau bagaimanapun, kadangkala perlu melakukan beberapa pemprosesan khas semasa proses muat turun, seperti memaparkan kemajuan muat turun, menyesuaikan pengepala permintaan, dsb. Ini boleh dicapai menggunakan jQuery.ajax().
Kod sampel:
$("#downloadBtn").click(function () { var url = "download_file.xlsx"; $.ajax({ url: url, type: 'GET', xhrFields: { responseType: 'blob' }, success: function (data) { var a = document.createElement('a'); var url = window.URL.createObjectURL(data); a.href = url; a.download = "download_file.xlsx"; a.click(); window.URL.revokeObjectURL(url); } }); });
Dalam kod sampel ini, permintaan GET dihantar melalui kaedah jQuery.ajax() dan jenis respons ditetapkan kepada blob
, menunjukkan bahawa data tindak balas adalah aliran binari. Selepas permintaan berjaya, buat teg <a>
dan gunakan kaedah window.URL.createObjectURL(data)
untuk menukar data respons kepada alamat URL. Tetapkan atribut <a>
teg href
kepada alamat URL, tetapkan atribut download
kepada nama fail dan panggil kaedah a.click()
untuk mencetuskan muat turun fail. Akhir sekali, gunakan kaedah window.URL.revokeObjectURL(url)
untuk melepaskan objek URL untuk mengelakkan kebocoran memori.
Perlu diambil perhatian bahawa penyemak imbas yang berbeza mungkin mempunyai pelaksanaan yang berbeza semasa memproses muat turun fail dan pelarasan yang sesuai mungkin perlu dibuat berdasarkan senario tertentu.
Ringkasan
Artikel ini memperkenalkan dua kaedah penggunaan jQuery untuk memuat turun fail, iaitu $.get()
dan jQuery.ajax()
. Dalam aplikasi praktikal, anda boleh memilih mengikut senario tertentu untuk memenuhi keperluan yang berbeza. Perlu diingat bahawa apabila berurusan dengan muat turun fail, anda perlu memberi perhatian kepada isu keserasian merentas pelayar.
Atas ialah kandungan terperinci Cara menggunakan jQuery untuk meminta dan memuat turun fail. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!