【发布时间】:2012-05-11 03:44:56
【问题描述】:
我在开发单页网络应用时遇到问题。
当 jQuery 发送 json 到 HTTPPOST 动作时:
$('#user_dialog .create').click(function () {
var user = getInfoUser();
$.ajax({
url: '@Url.Action("Create", "User")',
async: false,
type: 'POST',
data: JSON.stringify(user),
datatype: 'json',
contentType: 'application/json;charset=utf-8',
success: function (data) {
$('#user_dialog').dialog("close");
}
});
});
我在控制器中的 HTTPPOST 操作将处理请求
[HttpPost]
public String Create(UserAddViewModel model)
{
try
{
// TODO: Add insert logic here
return JsonConvert.SerializeObject(true);
}
catch
{
return JsonConvert.SerializeObject(false);
}
}
我的 jQuery success 回调函数将被触发并接收到数据 'true'。
但现在的问题是,在这之后,页面会被重定向到/User/Create查看页面
我不希望它重定向到页面,我只想通过我的 jQuery 代码处理 UI。
是因为它是 HTTPPOST 动作吗?
真正的原因是什么以及如何解决?
【问题讨论】:
标签: json asp.net-mvc-3 jquery