Bolehkah saya Menggunakan jQuery Ajax untuk Muat Naik Fail Menggunakan POST?
Muat naik fail melalui AJAX tidak boleh dilakukan dengan kod jQuery yang disediakan. Seperti yang dicadangkan oleh respons, anda tidak boleh memuat naik fail terus melalui AJAX.
Walau bagaimanapun, dengan kemunculan XHR2, muat naik fail melalui AJAX telah menjadi mungkin menggunakan objek FormData. Untuk ini berfungsi, anda perlu menggunakan penyemak imbas yang menyokong FormData, seperti:
Begini cara anda boleh mengubah suai kod anda untuk menggunakan FormData untuk muat naik fail:
var formData = new FormData(); formData.append('file', fileObject); // Replace 'fileObject' with your file input element $.ajax({ type: "POST", timeout: 50000, url: url, data: formData, // Use formData instead of dataString processData: false, // Prevents jQuery from converting formData to a string contentType: false, // Tells jQuery not to set any content type header success: function (data) { alert('success'); return false; } });
Dalam kod yang diubah suai ini, kami mencipta objek FormData, menambah fail padanya dan tetapkan processData dan contentType kepada false untuk membolehkan jQuery mengendalikan data dengan betul.
Atas ialah kandungan terperinci Bolehkah saya Menggunakan jQuery AJAX untuk Memuat Naik Fail, dan Bagaimana?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!