【发布时间】:2015-02-02 07:49:14
【问题描述】:
我实现了以下 jQuery 代码:
var $morning = $(".radiobox .bba, .radiobox .mba");
var $evening = $(".radiobox .mba");
$('.radiobox input.morneve').change(function(){
if ($(".radiobox input[value='Morning']").is(':checked')) {
$($morning).attr("enabled");
}
if (!$(".radiobox input[value='Morning']").is(':checked')) {
$($morning).attr("disabled");
}
if ($(".radiobox input[value='Evening']").is(':checked')) {
$($evening).attr("enabled");
}
if (!$(".radiobox input[value='Evening']").is(':checked')) {
$($evening).attr("disabled");
}
});
这是 HTML:
<div class="radiobox">
<input type="radio" name="morneve" class="morneve" value="Morning">
</div>
<div class="radiobox">
<input type="radio" name="morneve" class="morneve" value="Evening">
</div>
<hr />
<div class="radiobox">
<input type="radio" name="degreq" class="degreg bba" value="bba">
</div>
<div class="radiobox">
<input type="radio" name="degreq" class="degreg mba" value="mba">
</div>
我想要做的是,如果输入 Morning 被选中,那么应该启用 $morning。如果选择了输入 Evening,则应禁用 $morning 而应启用 $evening。
一切正常,除了重叠类 .mba
当我检查“早上”时,我看到启用了早上的那些。当我检查 Evening 时,只启用了 .mba。但是,如果我在 Morning 上单击返回,.mba 也会被禁用。
我已经花了好几个小时来解决这个问题,我确定我遗漏了一些东西......任何帮助将不胜感激。
谢谢!
【问题讨论】:
-
看看
.prop(prop, bool)方法 -
有一个参数,
.attr()检索值,它没有设置它。 -
没有
enabled属性,只有disabled。根据您的需要,将其设置为true或false。 -
也只显示你的html,它的格式不是很清楚。
-
已包含 HTML
标签: javascript jquery if-statement radio-button