2013-03-26 23 views
6

私は自分のアプリケーションでView 'Parent'を持っています.Html.BeginFormを使用しています&親ビューのデータを保存するための送信ボタン。親ビューの中に部分ビューが1つありますが、部分ビューからajaxメソッド(jQueryを使用)を呼び出そうとしていますが、そのたびに親フォームのアクションメソッドにリダイレクトされます。ボタンクリックからパーシャルビューへのリダイレクト親アクションのメソッドへのリダイレクト

Parent View 
@using (Html.BeginForm("Test1", "Home", new { id = 1 }, FormMethod.Get)) 
{ 
    @Html.Partial("TestPartial", Model) 
    <div> 
     <input id="Button1" type="submit" value="Parent" /> 
    </div> 
} 

Partial View 
<script> 
function onClientClick() { 
    $.ajax({ 
     url: "/Home/Test2", 
     type: "GET", 
     dataType: "json", 
     contentType: 'application/json; charset=utf-8', 
     data: JSON.stringify({ ID: 1 }), 
     cache: false, 
     success: function (data) { 
      alert('Success'); 
     }, 
     error: function (err, result) { 
      alert("Error" + err.responseText); 
     } 
    }); 
} 
</script> 
<div> 
<input type="submit" name="submit" onclick="onClientClick()" value="Submit" /> 
</div> 

私はそれは、AJAXを呼び出した後に/ホーム/ Test1を(親フォームのアクション)

答えて

4

inputタイプを変更すると:

<input type="submit" name="submit" onclick="onClientClick()" value="Submit" /> 

タイプは、それゆえsubmitですフォームを送信して、親のアクションにあなたをリダイレクトしています。私は標準buttonではなくsubmitを使用すると、このコンテキストでは、より適していると考えているが

<input type="button" onclick="onClientClick()" value="Ajax Call" /> 

あなたは可能性もreturn false:あなたの部分図で

AJAXコンテンツを要求するsubmit buttonbutton規則的ではないがあります。

2

戻るfalseに私をリダイレクトするパーシャルビューから/ホーム/ Test2をを呼び出すようにしようとしていますたびに...でonClientClick関数の最後

OR再書くあなたの

<input type="submit" name="submit" id="submit" value="Submit" /> 

と目として提出しますエンクリックイベントBND jqueryの問題は、このラインである

$("submit").click(function(e){ 
e.preventDefault() 
$.ajax({ 
     url: "/Home/Test2", 
     type: "GET", 
. 
. 
. 

}); 

ORsubmitからbutton

関連する問題