JQuery: 按类和输入类型选择

我希望选择一组既具有某种输入类型(比如复选框)又使用 jQuery 具有某种类的元素。但是,当我尝试以下方法时:

 $("input:checkbox .myClass")

我没有得到任何返回的项。我如何在 jQuery 中实现这一点?

292410 次浏览

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

试试这个:

$("input.myClass:checkbox")

检查它的行动

我还测试了这个:

$("input:checkbox.myClass")

它也会正常工作。在我看来,这种语法真的看起来相当丑陋,因为大多数时候,我预计 :样式选择器会排在最后。就像我说的,不管哪个都行。

如果您希望获得该类的输入,请使用:

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

[]选择器语法允许您检查任何元素属性。 查看 规格了解更多细节

您必须使用(对于复选框) :checkbox.name属性来按类进行选择。

例如:

$("input.aclass:checkbox")

:checkbox选择器:

匹配类型复选框的所有输入元素 像 $(':checkbox')这样的伪选择器等价于 $('*:checkbox') 这是一个缓慢的选择器。 建议做 $('input:checkbox')

你应该阅读 JQuery 文档来了解选择器。

您应该像这样使用类名

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

尝试使用这个 现场演示

试试这个:

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

为了防止像我这样的笨蛋尝试这里的建议,用一个按钮,发现没有任何工作,你可能想要这个:

$(':button.myclass')

另一种方式:

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