2012-11-14 233 views
0

我无法让我的代码工作。我有两个单选按钮:“任意位置”“某处”和两个复选框“作者”“参考” 如果选择任何位置,则两个复选框被禁用 如果选择某处,则启用两个复选框。使用jQuery禁用/启用复选框

<s:radio id="search_Anywhere" name="emplacement" list="getAnywhere()"/> 
<s:radio id="search_Somewhere" name="emplacement" list="getEmplacementNonPartout()"/> 
<s:checkbox cssClass="list_check" name="emplacementAuthor" disabled="true" value="true"/>Author 
<s:checkbox cssClass="list_check" name="emplacementreference" disabled="true" value="true"/>reference        

我已经修改了jQuery来此:

$("input[name='emplacement']").click(function() { 
     if ($('#search_Anywhere').is (":checked")) { 
      $(".list_check").attr("disabled" , true); 
      $(".list_check").removeAttr('checked'); 
      } else if ($('#search_Somewhere').is (":checked")){ 
       $(".list_check").removeAttr ("disabled"); 
       $(".list_check").attr('checked','true'); 
      } 
      }); 

然而,只有按钮“某处”的作品,当我点击它使复选框。按钮“Anywhere不工作,这使得它不可能禁用一个复选框启用。

任何人都可以请帮助?

回答

0

尝试使用禁用的,而不是真正的$(".list_check").attr("disabled", "disabled");

0

试试这个

$("input[name='emplacement']").click(function() { 
     if ($('#search_Anywhere').is (":checked")) { 
      $(".list_check").attr("disabled" , "disabled"); 
      $(".list_check").removeAttr('checked'); 
      } else if ($('#search_Somewhere').is (":checked")){ 
       $(".list_check").removeAttr ("disabled"); 
       $(".list_check").attr('checked','checked'); 
      } 
      }); 
+0

我已经尝试了以上,但不幸的是没有解决问题,现在这两个按钮都不起作用,复选框被设置为禁用,并且不能启用它们。 – user1353307

+0

它们是否是互斥的单选按钮? – Narendra

+0

脚本有了改变,你可以检查一下现在是否有效? – Narendra