【发布时间】:2011-03-29 01:45:25
【问题描述】:
代码和演示:http://spotsync.com/res.net/portals/reo/snippets/radio.html
我正在尝试为处于选中状态的单选按钮和/或复选框添加绿色背景。
复选框正常工作,但是当检查了不同的广播按钮时,其背景颜色不会删除。我在这里错过了什么?
【问题讨论】:
标签: jquery radio-button checked
代码和演示:http://spotsync.com/res.net/portals/reo/snippets/radio.html
我正在尝试为处于选中状态的单选按钮和/或复选框添加绿色背景。
复选框正常工作,但是当检查了不同的广播按钮时,其背景颜色不会删除。我在这里错过了什么?
【问题讨论】:
标签: jquery radio-button checked
当您使用无线电时,您使用的是一组输入,因此您不能只使用this is checked 条件。您需要过滤该组。
在这里查看: http://jsfiddle.net/PCkXS/
【讨论】:
记得在复选框中添加name=,这样会很好用
$('input').change(function() {
$('input[name="' + this.name + '"]').parent().removeClass('greenBG')
.find(':checked').parent().addClass('greenBG');
});
【讨论】:
我知道如何解决它,我会在一分钟内给你一个小提琴:-)
完美运行:http://jsfiddle.net/maniator/CujPG/2/
$(document).ready(function() {
$('input').change(function() {
if ($(this).is(':checked')) {
var children = $('.greenBG').children('input:not(:checked)');
if(children.length > 0){
$(children).each(function(){
$(this).parent().removeClass('greenBG');
})
}
$(this).parent().addClass('greenBG');
}
});
});
【讨论】:
-1的原因