jQuery启用/禁用复选框

时间:2011-08-26 17:21:42

标签: javascript jquery checkbox

jsFiddle:http://jsfiddle.net/KUcrm/

我有这段代码:

HTML

<input id="Check1" type="checkbox" name="ckbRG" tabindex="1" checked /><label for="Check1"> Check1</label><br />
<input name="txt1" type="text" maxlength="10" id="txt1" tabindex="2" />
<br /><br /><br />
<input id="Check2" type="checkbox" name="ckbNome" tabindex="3" checked /><label for="Check2"> Check2</label><br />
<input name="txt2" type="text" maxlength="10" id="txt2" tabindex="2" />

的jQuery

$("#Check1").click(function() {
    if ($("#Check1").attr("checked")) {
        $("#txt1").removeAttr("disabled");
    } else {
        $("#txt1").attr("disabled", "disabled");
    }
});


$("#Check2").click(function() {
     if ($("#Check2").attr("checked")) {
         $("#txt2").removeAttr("disabled");
     } else {
         $("#txt2").attr("disabled", "disabled");
     }
    $("#Check1").click();
});

通过选择Check2,也应选择Check1,但显然Ckeck1上的click事件在Check1更改状态(标记/未标记)之前运行。然后检查Check1时txt1关闭,未选中时txt1打开。

2 个答案:

答案 0 :(得分:1)

您应该使用.change而不是点击。当复选框改变时,它将触发。

答案 1 :(得分:0)

我想你想要:

$("#Check1").click().triggerHandler('click');

http://jsfiddle.net/KUcrm/3/