Asp.net mvc asp.net mvc ajax.begineform onsuccess事件和模型验证
这是密码Asp.net mvc asp.net mvc ajax.begineform onsuccess事件和模型验证,asp.net-mvc,validation,jquery,Asp.net Mvc,Validation,Jquery,这是密码 public class MyModel { [Required] public string Title {get;set;} } public class MyController : Controller { public ActionResult Post(MyModel model) { if (!ModelState.IsValid) return PartialView(model);
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>
@model-MyModel
@使用(Ajax.BeginForm(“Post”、“My”、new-AjaxOptions{OnSuccess=“suces”}){
Html.Partial(“Post”,Model)
}
功能成功(内容)
{
$(“#somediv”).html(内容);
}
现在,当ModelState字典没有错误时,一切都很顺利,但是当出现一些模型验证错误时,我无法在javascript中检测到它。这里有人可以帮忙吗
问候
Parminder有不同的方法来实现这一点。一种方法是让服务器端在出现错误时发送正确的HTTP代码(500):
if (!ModelState.IsValid)
{
Response.StatusCode = 500;
return PartialView(model);
}
并在客户端订阅OnFailure回调,并用不同的函数处理错误情况。有不同的方法来实现这一点。一种方法是让服务器端在出现错误时发送正确的HTTP代码(500):
if (!ModelState.IsValid)
{
Response.StatusCode = 500;
return PartialView(model);
}
在客户端上,订阅OnFailure
回调,并在不同的函数中处理错误情况