2017-02-06 13 views
0

こんにちは私はasp.netでjqueryアプリケーションを開発しています。私は以下のようなチェックボックスのリストを持っています。チェックボックスをチェックすると、私はそれを表示したい。以下は私のチェックボックスリストです。jqueryで選択したチェックボックスの値を取得するには?

<asp:CheckBoxList ID="ChKResons" runat="server" RepeatColumns="1" RepeatDirection="Horizontal" Style="margin-bottom: 8px; margin-right: 5px;" CellPadding="5" CellSpacing="25"> 
         <asp:ListItem Text="Your financial offer exceeded our budgeted amount" value="1"/> 
         <asp:ListItem Text="Your technical offer didn't comply with Oman Air's technical requirement" Value="2" /> 
        </asp:CheckBoxList> 

これは私のjqueryコードです。

$('#ChKResons').on('click', ':checkbox', function() { 
     if ($(this).is(':checked')) { 
      // handle checkbox check 
      alert($(this).val()); 
     } else { 
      // checkbox is unchecked 
      alert('unchecked') 
     } 
    }); 
    $('#ChKResons :checkbox').live('click', function() { 
     alert($(this).is(':checked')); 
    }); 

上記のコードは機能しません。私はこれを整理するためにいくつかの助けを得ることができますか?助けをいただければ幸いです。ありがとうございました。

+0

チェックボックスのクリックイベントが有効かどうかを確認するには、条件を事前に確認してください。 –

答えて

2

使用

$(this).prop('checked') 

代わりの

$(this).is(':checked') 

あなたの生成されたHTMLのチェックボックスは、ID ChKResonsを持っている場合のみのようなIDを使用してイベントを追加してください:

$('#ChKResons').on('click', function() { 
    alert($(this).prop('checked')); 
}); 

が唯一のイベントを添付一度。 同じIDを持つ複数の要素がある場合は、idを削除してすべての要素の共通クラスを追加し、クラスセレクタでイベントをアタッチします。

$('.commonClass').on('click', function() { 
    alert($(this).prop('checked')); 
}); 
+1

これは動作しません –

0

通常、チェックボックスには変更イベントが発生します。したがって、クリックするよりも変更を使用するのがよい方法です。 Ofcourse clickも機能します。

$("input:checkbox").change(function() { 
    if($(this).prop("checked")){ 
     alert('checked'); 
    }else{ 
     alert("unchecked"); 
    } 
}); 
+0

あなたの答えをありがとう。あなたのコードがOPの問題をどのように解決するか、そしてそれが他の答えよりも優れている理由について、いくつかの説明を含めてください。これは助けるかもしれません - [答え] – Tom

関連する問題