【问题标题】:jQuery: Selecting by class and input typejQuery:按类和输入类型选择
【发布时间】:2010-11-07 03:30:25
【问题描述】:

我想选择一组元素,它们既属于某种输入类型(例如,一个复选框),又具有使用 jQuery 的某个类。但是,当我尝试以下操作时:

 $("input:checkbox .myClass")

我没有收到任何退货。我如何在 jQuery 中实现这一点?

【问题讨论】:

    标签: jquery


    【解决方案1】:

    您的选择器正在寻找具有.myClass 类的复选框元素的任何后代。

    试试这个:

    $("input.myClass:checkbox")
    

    Check it out in action.

    我也对此进行了测试:

    $("input:checkbox.myClass")
    

    它也可以正常工作。以我的拙见,这种语法看起来确实很丑陋,因为大多数时候我希望: 样式选择器排在最后。不过,正如我所说,任何一个都可以。

    【讨论】:

      【解决方案2】:

      如果您想使用该类获取该类型的输入,请使用:

      $("input.myClass[type=checkbox]")
      

      [] 选择器语法允许您检查任何元素属性。 查看spec了解更多详情

      【讨论】:

        【解决方案3】:

        您必须使用(用于复选框):checkbox.name 属性才能按类选择。

        例如:

        $("input.aclass:checkbox")
        

        :checkbox 选择器:

        匹配复选框类型的所有输入元素。使用这个 像$(':checkbox') 这样的伪选择器相当于$('*:checkbox') 这是一个慢速选择器。 推荐$('input:checkbox')

        您应该阅读jQuery documentation 以了解选择器。

        【讨论】:

          【解决方案4】:

          你应该像这样使用类名

          $(document).ready(function(){
              $('input.addCheck').prop('checked',true);
          });
          

          尝试使用live demo

          【讨论】:

          • 答案与问题无关。
          • 然而,答案对寻找类似东西的其他人完全有帮助,但不是确切的 OP 问题。
          【解决方案5】:

          试试这个:

          $("input:checkbox").hasClass("myClass");
          

          【讨论】:

            【解决方案6】:

            以防万一像我这样的傻瓜用按钮尝试了这里的建议但发现没有任何效果,你可能想要这个:

            $(':button.myclass')
            

            【讨论】:

              【解决方案7】:

              另一种方式:

              $("input[class*='myClass']")
              

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2011-06-20
                • 1970-01-01
                • 2020-03-23
                相关资源
                最近更新 更多