想法是将表单数据从普通的外部 Html 页面发布到另一个 MVC 站点控制器。然后数据的处理几乎就像使用网络服务一样。
$(document).ready(function () {
var options = {
target: '#output',
success: function(data){ alert('test success'); },
url: http://localhost:57232/Services/SendFormData,
dataType: json
};
$('form').ajaxForm(options);
});
ActionResult 在 FormCollection 对象中正确接收数据。
[HttpPost]
public ActionResult SendFormData(FormCollection collection)
{
string s = string.Empty;
return Json(new { Success = true, Message = "Message!" }, JsonRequestBehavior.AllowGet);
}
此时返回成功结果,但是当它到达外部表单时,我的浏览器(在本例中为 IE)会尝试保存或打开返回的字节,而不是调用成功回调函数。
因为这个页面是一个外部页面,而不是 MVC 站点的一部分,所以我不能使用视图或部分视图。返回类型应该是什么?