2010-12-07 10 views
0

私は同一の項目すべてとradiobuttonlistsのグループを持っている:私はすべてのradiobuttonlistsを防ぐためにしようとしていますjQueryのRadioButtonListの依存関係に

  <asp:RadioButtonList ID = "rbFirstList" runat = "server" CssClass= "tbiDiagnosis"> 
       <asp:ListItem Text = "0. No" Value = "0"></asp:ListItem> 
       <asp:ListItem Text = "1. Yes, one episode" Value = "1"></asp:ListItem> 
       <asp:ListItem Text = "2. Yes, two episodes" Value = "2"></asp:ListItem> 
       <asp:ListItem Text = "3. Yes, three episodes" Value = "3"></asp:ListItem> 
       <asp:ListItem Text = "4. Yes, four episodes" Value = "4"></asp:ListItem> 
       <asp:ListItem Text = "5. Yes, five or more episodes" Value = "5"></asp:ListItem> 
       <asp:ListItem Text = "6. Uncertain" Value = "6"></asp:ListItem> 

      </asp:RadioButtonList> 

      <asp:RadioButtonList ID = "rbSecondList" runat = "server" CssClass= "tbiDiagnosis"> 
       <asp:ListItem Text = "0. No" Value = "0"></asp:ListItem> 
       <asp:ListItem Text = "1. Yes, one episode" Value = "1"></asp:ListItem> 
       <asp:ListItem Text = "2. Yes, two episodes" Value = "2"></asp:ListItem> 
       <asp:ListItem Text = "3. Yes, three episodes" Value = "3"></asp:ListItem> 
       <asp:ListItem Text = "4. Yes, four episodes" Value = "4"></asp:ListItem> 
       <asp:ListItem Text = "5. Yes, five or more episodes" Value = "5"></asp:ListItem> 
       <asp:ListItem Text = "6. Uncertain" Value = "6"></asp:ListItem> 

      </asp:RadioButtonList> 

は、「なし」(値0)を選択していないので、その中の1つを選択(クリック)すると、を選択した値を知りたいのですが、をクリックした場合を除きます。

 $('.tbiDiagnosis input:radio').click(function(e) { 

      if ($(this).val() == 0) { 

       //selector is obviously incorrect, how would I do it here? 
       if ('.tbiDiagnosis input:checked:not($this)).val() > 0).length == 0) 
        e.preventDefault(); 

      } 

     }); 

ありがとうございます。

答えて

1

あなたの後ろには何かが不明ですが、おそらくあなたはあなたが何をしているかをより詳細に説明することができます。あなたが探しているものは、値属性[value='0']でフィルタリングすることで実現できます(下の例を参照)。私はこれが役立つことを願っています

$('.tbiDiagnosis input:radio').click(function(e) { 

    if ($(this).val() == 0) { 
     var checked = $(".tbiDiagnosis input:checked"); 
     var filtered = checked.not(checked.find("[value='0']")); 

     if (filtered.length == 0) 
      e.preventDefault(); 

    } 

}); 
+0

返信いただきありがとうございます。はい、これは私が後にしていることです。少なくとも1人が「0」以外の値を選択していることを確認してください。 – Victor

+0

@Victor:これがうまくいく場合は、回答を受け入れたものとしてマークしてください。 – James