我的jquery代码有问题,我试图说明如果“是”按钮打开,则禁用“否”按钮,否则如果“否”按钮打开,则禁用“是”按钮,否则启用两个按钮。
但是,当其他按钮打开时,按钮被禁用,有人知道这是为什么吗?
以下是代码:
function btnclick(btn)
{
var context = $(btn).parents('#optionAndAnswer');
if (context.length == 0) {
context = $(btn).parents('tr');
}
$(btn).toggleClass("answerBtnsOff");
$(btn).toggleClass("answerBtnsOn");
if ($("#answerYes", context).hasClass('.answerBtnsOn')) {
$("#answerNo", context).attr("disabled", "disabled");
}
else if ($("#answerNo", context).hasClass('.answerBtnsOn')) {
$("#answerYes", context).attr("disabled", "disabled");
}
else {
$("#answerYes", context).removeAttr("disabled");
$("#answerNo", context).removeAttr("disabled");
}
return false;
}
对于是和否按钮,下面是html:
是按钮:
<input class="answerBtns answers answerBtnsOff" name="answerYesName" id="answerYes" type="button" value="Yes" onclick="btnclick(this);"/>
没有按钮:
<input class="answerBtns answers answerBtnsOff" name="answerNoName" id="answerNo" type="button" value="No" onclick="btnclick(this);"/>
答案 0 :(得分:2)
你没有把.
放在toggleClass / hasClass / removeClass / ...你只在选择器中使用它们
答案 1 :(得分:0)
对于这两个按钮,将此.attr("disabled", "disabled");
更改为此.attr("disabled", true);
。另外,你会希望删除像@Musa这样的时期