2011-07-15 24 views
1

この表には3つのラジオボタンが含まれています。特定のラジオボタンがチェックされているかどうかを特定の時点で調べたいと思います。jqueryでチェックされているラジオボタンの値を確認

<table align="center" width="100%" border="0"> 
    <tbody> 
     <tr> 
      <td> 
       <input type="radio" name="compareRadio" value="all" checked="checked"/> 
       <label>View All Records</label> 
      </td> 
      <td> 
       <input type="radio" name="compareRadio" value="diff" /> 
       <label>View Differences</label> 
      </td> 
      <td> 
       <input type="radio" name="compareRadio" id="patch" value="patches" /> 
       <label>Compare Patches</label> 
      </td> 
      <td> 
       <input type="button" class="btn" value="Export Into Excel"/> 
      </td> 
     </tr> 
    </tbody> 
</table> 

私は結果が戻って来るとき、私はpatchesラジオボタンが選択されているかどうかを確認したい、サーバーにリクエストを送信します。

だから私はこのような何かをした..しかし、あなたはそれがチェックされているかどうかを知りたい場合は、それは、あなたがこれを行うことができ、allラジオボタン

$.post("/csm/compare.action", 
    { 
    sessiontoken: sessiontoken, 
    compareCategory: "system", 
    compareSubCategory:"patch", 
    xml1:absP[0], 
    xml2:absP[1]}, 
     function(resdata) 
     { 
     comparePatchData=resdata; 
     comparePatchLoading=false; 
     if($("input:radio[name=compareRadio]").val()=="patches") 
     { 
      //Trigger click on radio button for "same" campare 
      $('input[name=compareRadio]:eq(2)').click(); //so that it refreshes the content 
      $("input[name=compareRadio]:eq(2)").attr("checked", true); 
      $('input[type="radio"]').removeAttr('disabled'); 
     } 
     } 
); 

答えて

3

を返します。

if($('#patch:checked').length) 
    // It is checked. 

または:

if($('input[value=patches]:checked').length) 
    // It is checked. 

$()関数が一致ELEの配列を返しますlengthのプロパティを確認して、一致するものがいくつあっても確認できます。

参考文献:

+0

私は '$("入力を試してみました:radio [name = compareRadio]:checked ")。val()' [this site](htt p://forum.jquery.com/topic/checking-if-certain-radiobutton-is-checked)それは私のために働いた。あなたの答えと説明もありがとう。 – abi1964

+1

@Abhishek:チェックされたラジオボタンの値が必要な場合は、そのようなものを使用して、必要なものがあるかどうかを確認できます。特定のものがチェックされているかどうかを知りたいのですか、どれがチェックされているかを知りたいのですか? '#patch:checked'はおそらく最も速いですが、IDセレクタは' document.getElementById() 'の呼び出しとして終わります。これはかなり高速です。 OTOH、これはパフォーマンスのボトルネックになるのではないかと思います。 –

1

特定のチェックボックスがチェックされている場合は、jQueryのis()を使用することができます見つけるために:

if($('input[value=all]').is(':checked')) 
{ 
    //Yep, it's checked 
} 
関連する問題