form ajax 表单 上传文件

var formData = $("form").serialize(); 

此方式无法ajax上传文件,正常post数据交互可以,如果加上processData和contentType 正常post数据和上传文件也都无法交互,正常post不能加processData和contentType 

var formData = new FormData(document.getElementById("form"));

此方式正常post数据交互 ;可以ajax上传文件单是ajax必须加上 processData和contentType

如下例子:

$.ajax({
        url: url,
        type: "POST",
        data: formData,
        processData: false,  // 告诉jQuery不要去处理发送的数据
        contentType: false,   // 告诉jQuery不要去设置Content-Type请求头
        success: function(data){
            if( data.code == 200 ){
           //后台操作成功
        } else {
            //后台操作失败
        }
        }
    });


猜你喜欢

转载自blog.csdn.net/CaiL_520914/article/details/80782754