如何解决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\",error: function (data) {
}
});
我需要在Action Method中保留绑定到JSON对象的功能,这是否意味着我必须放弃发布文件?
解决方法
看看jQXB(http://www.jqxb.altervista.org或http://jqxb.codeplex.com)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。