以下是代码
public class MyModel
{
[Required]
public string Title {get;set;}
}
public class MyController : Controller
{
public ActionResult Post(MyModel model)
{
if (!ModelState.IsValid)
return PartialView(model);
return PartialView("SomeOtherView");
}
}
这是我的观点
@model MyModel
@using(Ajax.BeginForm("Post","My",new AjaxOptions{OnSuccess = "Sucess" }) {
Html.Partial("Post",Model)
}
<script>
function Success(content)
{
$("#somediv").html(content);
}
</script>
现在,当ModelState Dictionary没有错误时,一切顺利,但是当有一些模型验证错误时,我无法在javascript中检测到它。有人可以帮忙吗。
此致 成员Parminder
答案 0 :(得分:1)
有不同的方法来实现这一目标。一种方法是让服务器端在发生错误时发送正确的HTTP代码(500):
if (!ModelState.IsValid)
{
Response.StatusCode = 500;
return PartialView(model);
}
并在客户端上订阅OnFailure
回调并在不同的函数中处理错误情况。