0

我无法使我的代码正常工作。我有两个单选按钮:“任何地方”“某处”和两个复选框“作者”“参考”如果选择任何地方,则禁用两个复选框 如果选择某处,则启用两个复选框。

<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');
             }
            });

但是,只有“某处”按钮有效,当我单击它时,它会启用复选框。按钮“任何地方都不起作用,这使得无法禁用启用的复选框。

有人可以帮忙吗?

4

2 回答 2

0

尝试使用 disabled 而不是 true$(".list_check").attr("disabled", "disabled");

于 2012-11-14T09:31:08.047 回答
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');
             }
            });
于 2012-11-14T09:31:18.960 回答