Javascript 输入类型文件在jquery ajax中未序列化
下面是我在提交时将表单返回jquery函数时的razor代码Javascript 输入类型文件在jquery ajax中未序列化,javascript,jquery,json,ajax,asp.net-mvc,Javascript,Jquery,Json,Ajax,Asp.net Mvc,下面是我在提交时将表单返回jquery函数时的razor代码 @model Slider @{ Layout = null; } @using (Html.BeginForm("AddOrEdit", "Slider", FormMethod.Post, new { enctype = "multipart/form-data" , onsubmit = "return SubmitForm(this)" })) { @
@model Slider
@{
Layout = null;
}
@using (Html.BeginForm("AddOrEdit", "Slider", FormMethod.Post, new { enctype = "multipart/form-data" , onsubmit = "return SubmitForm(this)" }))
{
@Html.HiddenFor(m => m.Id)
<div class="form-group" style="height:270px;">
@Html.LabelFor(m => m.ImageFile, new { @class = "blue-text", @style =
"font-size:16px", @id = "" })
<input name="ImageFile" type="file" />
</div>
<div class="form-group">
<input type="submit" value="Submit" class="btn btn-primary" />
<input type="reset" value="Reset" class="btn" />
</div>
}
尝试下面的代码,并在ajax代码中做一些更改。在代码中添加以下参数
processData: false,
contentType: false,
并添加var formData=new formData$formID[0];在ajax开始之前执行一行
您应该使用FormData使用ajax上传文件$serialize将只提供键和值。您可以使用下面的代码使用AJAX上传文件
var formData = new FormData($(form)[0]);
$.ajax({
url: form.action,
type: form.method,
data: formData,
processData: false,
contentType: false,
success: function (response) {
}
});
尝试下面的代码,并在ajax代码中做一些更改。在代码中添加以下参数
processData: false,
contentType: false,
并添加var formData=new formData$formID[0];在ajax开始之前执行一行
您应该使用FormData使用ajax上传文件$serialize将只提供键和值。您可以使用下面的代码使用AJAX上传文件
var formData = new FormData($(form)[0]);
$.ajax({
url: form.action,
type: form.method,
data: formData,
processData: false,
contentType: false,
success: function (response) {
}
});
非常感谢它工作^ ^。感谢它帮助我将formData与文件一起获取键、值,还是我们必须一起发送formData值和序列化值?非常感谢它工作^ ^。感谢它帮助我将formData与文件一起获取键、值,还是我们必须一起发送formData值和序列化值?