【问题标题】:jquery how to filter unchecked checkboxes from a formjquery如何从表单中过滤未选中的复选框
【发布时间】:2013-06-24 11:16:21
【问题描述】:

在我的页面中,我的表单中确实没有复选框。因为我正在检查其中的一些,我需要过滤其余的复选框并需要在这些复选框上添加分隔事件。我喜欢这样:

var userLocales =   $('input[type="checkbox"]', "form").filter(function(){ 
                return $(this).val() === value["name"]
            }).prop("checked",true);

            $(userLocales).click(function(){
                $(this).parent().toggleClass("red");
            })

            $('input:checkbox:not("checked")', "form").not(userLocales).click(function(){
                $(this).parent().addClass("green"); //this is not working.. it works even for not selected elements..
            })

但不工作..任何正确的方法来完成这件事..?

【问题讨论】:

    标签: jquery filter


    【解决方案1】:

    鉴于您首先知道如何获取复选框,请考虑:

    checkboxes$.filter(':checked')....
    

    或:

    checkboxes$.filter(':not(:checked)')....
    

    【讨论】:

      【解决方案2】:

      您需要在选择器中使用:checked

      试试:

      $('input:checkbox:not(":checked")', "form")
      

      而不是

      $('input:checkbox:not("checked")', "form")
      

      【讨论】:

      • 你能看看我的代码吗,我已经在用了。但我的意图是它不应该在我的“userLocales”上发生 - 元素
      • 你能在小提琴中复制它吗?问题是您的代码有许多仍不清楚的因素。小提琴会有所帮助!
      【解决方案3】:

      试试这个,

      $('input:checkbox:not(":checked")', "form").on('click',function(){
           $(this).parent().addClass("green");
      });
      

      【讨论】:

      • @3gwebtrain 更新了检查上面那个我已经做了修改。
      • 我正在将值推送到数组,当未选中单击时,它推送了 6 次(选中元素的计数)为什么..?
      猜你喜欢
      • 2021-11-27
      • 2011-08-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-06
      • 1970-01-01
      • 2011-10-25
      • 2015-01-27
      相关资源
      最近更新 更多