试图禁用单选按钮

时间:2013-08-23 04:19:12

标签: javascript jquery html sharepoint radio-button

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

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

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">

3 个答案:

答案 0 :(得分:0)

尝试使用disabled作为true

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

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

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

查看FIDDLE

答案 1 :(得分:0)

high.attr("disabled",'disabled'); or high.prop("disabled",'true');


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


high.removeAttr("disabled"); //to remove it

答案 2 :(得分: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);
}