2011-10-29 6 views
1

ここでは、ここにModelState辞書にエラーがないとき、すべてがうまくいく、今私のビューasp.net MVC ajax.begineform ONSUCCESSイベントとモデルの検証

@model MyModel 

    @using(Ajax.BeginForm("Post","My",new AjaxOptions{OnSuccess = "Sucess" }) { 
     Html.Partial("Post",Model) 

    } 

<script> 
function Success(content) 
{ 
    $("#somediv").html(content); 

} 


</script> 

あるコード

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"); 
    } 



} 

ですしかし、いくつかのモデル検証エラーがある場合、私はjavascriptでそれを検出する方法がありません。誰かがここで助けられますか?

よろしく Parminder

答えて

1

これを達成するためのさまざまな方法があります。

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

をして、クライアント上でOnFailureコールバックを引き受けると異なる機能のエラーケースを扱う:一つの方法は、サーバー側がエラーの場合には、適切なHTTPコード(500)を送信することです。

+0

ただし、エラーメッセージで表示されません。 – Parminder

関連する問題