MVC3-通过AJAX和JSON发布文件,不带形式
||
我有一个Action方法,可以从客户端接收复杂的JSON对象。我在客户端将此对象序列化,并且由于复杂性,我不能(不想)使用表单提交来发布数据。
我还需要能够与此ajax请求一起发送文件。我的动作方法可以完美工作,并且可以使用jQuery.ajax()很好地绑定JSON对象(实际上是对象列表)。当我移至ajax表单插件以便可以发送文件时,对象绑定中断。我尝试使用插件提交表单,并将我的对象作为附加数据发送。动作方法不再看到我的对象。
关于如何将JSON和文件一起发布到同一操作方法的任何想法?
这是有效的jQuery.ajax()方法。这里没有表单提交,这只是将JSON数据发送到服务器
$.ajax({
url: \"/Controller/Create2\",
type: \'POST\',
data: JSON.stringify(model),
dataType: \'json\',
contentType: \'application/json, charset=utf-8\',
beforeSend: function () {
},
success: function (data) {
},
error: function () {
}
});
我的Action方法以这种方式完美地获取了对象列表。
public ActionResult Create2(List<CreateModel> model)
{
//Do stuff
}
但是,当我在表单上执行ajax提交并追加数据时,模型返回null。
f.ajaxSubmit({
url: \"/Controller/Create2\",
type: \"POST\",
data: JSON.stringify(model),
dataType: \'json\',
contentType: \'application/json, charset=utf-8\',
beforeSend: function () {
},
success: function (data) {
},
error: function (data) {
}
});
我需要在Action Method中保留绑定到JSON对象的功能,这是否意味着我必须放弃发布文件?
没有找到相关结果
已邀请:
1 个回复
捐焦