2017-10-02 13 views
0

私はAjax.BeginFormを使用しているかみそり部分図を持っています。問題は、このビューに添付されている角度コントローラーを使用してajaxレスポンスを処理したいということです。 htmlattributesを使用してカスタム属性を入力に割り当てることはできますが、AjaxOptions以外にはAjax.BeginFormヘルパーと類似のものは見つかりませんでした。しかし、どのようにそれの中に角形コントローラメソッドを定義できますか?角度コントローラーを使用してAjax(Ajax.BeginForm)レスポンスを処理する方法は?

UPD:私は角度の方法を介して、このイベントを処理することができ、

<div class="content"> 
@using (Ajax.BeginForm("AccountCheckLogin2", "Login", new AjaxOptions { OnSuccess = "OnSuccessLogin", OnBegin = "OnBeginLogin", OnComplete = "OnCompleteLogin", OnFailure = "OnFailureLogin" })) 
{ 
//inputs here 
} 
<a class="link" href="/Registration/Registration">Я не зареестрований</a> 
</div> 
</div> 

<script type="text/javascript"> 
function OnSuccessLogin(response) { 
if (response.ResponseCode == "1") { 
window.location = "/"; 
} 
else 
{ 
$("#LoginValidationSummary ul").append("<li>"+response.ResponseMessage+"</li>"); 
} 
} 
function OnBeginLogin() { 
$("#loginSubmit").prop("disabled", true); 
} 
function OnCompleteLogin() { 
$("#loginSubmit").prop("disabled", false); 
} 
function OnFailure() { 
alert("Whoops! That didn't go so well did it?"); 
} 
</script>  

質問です:私はOnSuccessなどのAjaxイベントは以下のように定期的にJavaScriptで処理することができることをご存知ですか?

答えて

0

あなたの質問に答えるには、はい。これらのイベントを処理するには、AngularJSを使用できます。代わりにAjaxフォームヘルパーを使用する必要はなく、通常のフォームを使用します。そのフォームには、ng-clickまたはng-submitイベントを使用するように配線することができます。このイベントでは、Angularコントローラのメソッドを呼び出す必要があります。引き続き、フォームを提出するためにサービス呼び出しを行う必要があります。

+0

ng-clickまたはng-submitを使用してフォームを送信すると、ページがリロードされます。そして私はページをリロードしたくありません。 – Ari4

関連する問題