【问题标题】:Remove background from radio button on unCheck从取消选中的单选按钮中删除背景
【发布时间】:2011-03-29 01:45:25
【问题描述】:

代码和演示:http://spotsync.com/res.net/portals/reo/snippets/radio.html

我正在尝试为处于选中状态的单选按钮和/或复选框添加绿色背景。

复选框正常工作,但是当检查了不同的广播按钮时,其背景颜色不会删除。我在这里错过了什么?

【问题讨论】:

标签: jquery radio-button checked


【解决方案1】:

当您使用无线电时,您使用的是一组输入,因此您不能只使用this is checked 条件。您需要过滤该组。

在这里查看: http://jsfiddle.net/PCkXS/

【讨论】:

  • 谢谢。我结合了你的答案和加里的下面来解决这个问题。基本上我不知道您可以使用 jQuery 退出和返回 Dom 选择。
  • 很高兴我的帮助,javascript 确实可以做很多事情
【解决方案2】:

记得在复选框中添加name=,这样会很好用

$('input').change(function() {
   $('input[name="' + this.name + '"]').parent().removeClass('greenBG')
   .find(':checked').parent().addClass('greenBG');
});

【讨论】:

    【解决方案3】:

    我知道如何解决它,我会在一分钟内给你一个小提琴:-)

    完美运行: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的原因
    猜你喜欢
    • 1970-01-01
    • 2018-06-08
    • 1970-01-01
    • 1970-01-01
    • 2010-10-14
    • 1970-01-01
    • 2012-01-23
    • 2012-03-17
    相关资源
    最近更新 更多