0

我有两个单选按钮来选择优先级为高或常规。

我编写了这个函数来禁用未选中的单选框。出于某种原因,它不会禁用该框。我在控制台中没有错误。

function disablePriority(){
    var reg = $('input[value="ct100"]');
    var high = $('input[value="ct101"]');

    alert('cp');
    if(reg.attr("checked")){
    alert('cp1');
        high.attr("disabled","disabled");
    }else{
    alert('cp2');
        reg.attr("disabled","disabled");
    }
}

这是两个单选框的 html

<input id="ctl00_m_g_72c1058f_372a_4780_b0c6_58f4c7012b35_ff61_ctl00_ctl00" type="radio" name="ctl00$m$g_72c1058f_372a_4780_b0c6_58f4c7012b35$ff61$ctl00$RadioButtons" value="ctl00">


<input id="ctl00_m_g_72c1058f_372a_4780_b0c6_58f4c7012b35_ff61_ctl00_ctl01" type="radio" name="ctl00$m$g_72c1058f_372a_4780_b0c6_58f4c7012b35$ff61$ctl00$RadioButtons" value="ctl01" checked="checked">
4

3 回答 3

0

试试看disabled_ true_

if(reg.attr("checked")){

    high.attr("disabled",true);
}else{

    reg.attr("disabled",true);
}

检查这个小提琴

于 2013-08-23T04:22:16.720 回答
0
high.attr("disabled",'disabled'); or high.prop("disabled",'true');


high[0].disabled=true;high[1].disabled=true


high.removeAttr("disabled"); //to remove it
于 2013-08-23T04:24:02.417 回答
0

好的,首先您的输入中有一个错字value。在 HTML 中,它是 ctl01 和 ctl00(注意小写的“L”)。在您的 jQuery 中,它是 ct100 和 ct101。

如下更改值,它可以工作。

var reg = $('input[value="ctl00"]');
var high = $('input[value="ctl01"]');

if(reg.prop("checked")){
alert('cp1');
    high.prop("disabled",true);
}else{
alert('cp2');
    reg.prop("disabled", true);
}
于 2013-08-23T04:33:27.443 回答