2016-07-15 9 views
0

ここにサンプルコードがあります。スクリプトをコメントアウトすると、ボタンクリック時にサーバー側の関数が呼び出されます。次のコードのエラーはどうなりますか?jQueryでonclickが期待どおりに機能していない

<form id="form1" runat="server">  
    <input type="checkbox" id="chb1" value="Hourly" /> 
    <input type="checkbox" id="chb2" value="Daily" /> 
    <input type="checkbox" id="chb3" value="Weekly" /> 
    <input type="checkbox" id="chb4" value="Monthly" /> 
    <input type="checkbox" id="chb5" value="Yearly" /> 

    <asp:Button Text="submit" runat="server" ID="btnSubmit" OnClick="btnSubmit_Click"/> 
</form> 
<div></div> 

<script src="https://code.jquery.com/jquery-1.10.2.js"></script> 
<script type="text/javascript"> 

     var selectedcout = 0; 

     var countChecked = function() { 
      var n = $("input:checked").length;     
      $("div").text(n + (n === 1 ? "is" : "are") + "checked"); 
     }; 
     countChecked(); 

     $("input[type=checkbox]").on("click", countChecked); 

</script> 
+1

@ARUN OPは、彼らが私に新しい、オーケー –

+0

ロリーMcCrossanを必要としないので、DOMが作成された後JSを実行しています=」 –

+0

答えて

0

あなたが提出されてからフォームを停止することができるように、フォームではなく、送信ボタンのclicksubmitイベントにフックする必要があります。これを試してみてください:

var selectedcout = 0; 

var countChecked = function() {   
    var n = $("input:checked").length;     
    $("div").text(n + (n === 1 ? " is " : " are ") + "checked"); 
}; 

countChecked(); 

$('#form1').on('submit', function(e) { 
    e.preventDefault(); // stop the form submitting 
    countChecked(); 
}); 
+0

が機能していない、ボタンをクリックしたときにバックエンドの機能にアクセスできない –

+0

さて、そうではありません。どちらか一方しか持てません。 UIを更新してフォームを停止するか、フォームを送信してUIを更新することはできません。あなたは両方をしたい場合は、AJAXを使用する必要があります。 –

+0

よろしくお願いします。 –

関連する問題