如何使用jquery序列化進行文件上傳所以我有一個表單,我使用jquery序列化函數通過ajax提交表單 serialized = $(Forms).serialize();
$.ajax({
type : "POST",
cache : false,
url : "blah",
data : serialized,
success: function(data) {
}但是如果表單有一個<input type="file">字段怎么辦....如何使用這個ajax序列化方法將文件傳遞給表單...打印$ _FILES不輸出任何內容
3 回答
白衣非少年
TA貢獻1155條經驗 獲得超0個贊
無法使用AJAX上傳文件,因為您無法訪問存儲在客戶端計算機上的文件的內容,并使用javascript將其發送到請求中。實現此目的的技巧之一是使用隱藏的iframe。有一個很好的jquery表單插件,允許您AJAXify您的表單,它也支持文件上傳。因此,使用此插件,您的代碼將如下所示:
$(function() {
$('#ifoftheform').ajaxForm(function(result) {
alert('the form was successfully processed');
});});該插件自動負責訂閱submit表單事件,取消默認提交,序列化值,使用正確的方法和處理文件上載字段,...
守候你守候我
TA貢獻1802條經驗 獲得超10個贊
它適用于任何類型的表單
$(document).on("submit", "form", function(event){
event.preventDefault();
var url=$(this).attr("action");
$.ajax({
url: url,
type: $(this).attr("method"),
dataType: "JSON",
data: new FormData(this),
processData: false,
contentType: false,
success: function (data, status)
{
},
error: function (xhr, desc, err)
{
}
}); });- 3 回答
- 0 關注
- 624 瀏覽
添加回答
舉報
0/150
提交
取消
