AJAX MVC3 jquery AJAX回调总是在成功时开始
我有以下问题,我有一个由ajax调用的post操作:AJAX MVC3 jquery AJAX回调总是在成功时开始,jquery,asp.net-mvc-3,data-annotations,Jquery,Asp.net Mvc 3,Data Annotations,我有以下问题,我有一个由ajax调用的post操作: [AcceptVerbs(HttpVerbs.Post)] public ActionResult AX_Login(LoginVM usersubmitted) { if (ModelState.IsValid) { return Json(new { success = true }); } else { return Json(new { success=false, error =
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult AX_Login(LoginVM usersubmitted)
{
if (ModelState.IsValid)
{
return Json(new { success = true });
}
else
{
return Json(new { success=false, error = true });
}
}
另一方面,我有以下用于按钮的jquery处理程序:
$("#Jquery_LoginButton").click(
function () {
$.ajax({
type: "POST",
url: "@(Url.Action("AX_Login","Users"))",
data:$("#MiniLoginForm").serialize(),
success: function (result)
{
alert("Good");
},
error: function ()
{
alert("Bad");
}
});
}
)
我的问题是:操作已经完成,但ajax调用总是在成功时结束——即使模型无效
问题:
- 你知道为什么会发生这种情况,如果我设置为假成功?如果模型无效,我可以抛出一个异常,但我看不出这个东西很优雅
- 您通常如何使用数据注释和Ajax管理验证
- 因为你的要求,你总是能获得“成功”,这是正确的
总是工作<代码>$。ajax不知道返回的数据是什么。
因此,只有当您的请求失败时(例如404),您才会收到
错误
你必须这样做
$.ajax({
type: "POST",
url: "@(Url.Action("AX_Login","Users"))",
data:$("#MiniLoginForm").serialize(),
success: function (result)
{
if (result.success)
{
alert("Good");
}
else
{
alert("Bad");
}
},
error: function ()
{
alert("Request failed");
}
});
希望这有帮助因为你的要求,你总是能获得“成功”,这是正确的 总是工作<代码>$。ajax不知道返回的数据是什么。 因此,只有当您的请求失败时(例如404),您才会收到
错误
你必须这样做
$.ajax({
type: "POST",
url: "@(Url.Action("AX_Login","Users"))",
data:$("#MiniLoginForm").serialize(),
success: function (result)
{
if (result.success)
{
alert("Good");
}
else
{
alert("Bad");
}
},
error: function ()
{
alert("Request failed");
}
});
希望这有帮助完成。。。最后一个问题,你有没有url来解释现在突出显示那些值无效的文本框的最佳方式?我可以从json操作返回错误消息,但这是正确的方法吗?谢谢,祝你度过愉快的一天。你可以这样做,但我不知道你到底想要什么。您应该阅读有关验证的内容。完成。。。最后一个问题,你有没有url来解释现在突出显示那些值无效的文本框的最佳方式?我可以从json操作返回错误消息,但这是正确的方法吗?谢谢,祝你度过愉快的一天。你可以这样做,但我不知道你到底想要什么。您应该阅读有关验证的内容。