asp.net mvc ajax.begineform onsuccess событие и проверка модели - PullRequest
1 голос
/ 29 октября 2011

Вот коды

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 нет ошибок, все идет хорошо, но при некоторой ошибке проверки моделиУ меня нет способа обнаружить это в JavaScript.Может кто-то помочь здесь.

С уважением Parminder

1 Ответ

1 голос
/ 29 октября 2011

Есть разные способы достичь этого.Один из способов заключается в том, чтобы серверная сторона отправляла правильный HTTP-код (500) в случае ошибки:

if (!ModelState.IsValid)
{
    Response.StatusCode = 500;
    return PartialView(model);
}

, а на клиенте подписывался на обратный вызов OnFailure и обрабатывал случай ошибки в другой функции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...