是否可以将类选择器和属性选择器与 jQuery 结合起来?
例如,给定以下 HTML:
<TABLE>
<TR class="myclass" reference="12345"><TD>Row 1</TD></TR>
<TR class="otherclass" reference="12345"><TD>Row 2</TD></TR>
<TR class="myclass" reference="12345"><TD>Row 3</TD></TR>
<TR class="myclass" reference="54321"><TD>Row 4</TD></TR>
</TABLE>
我可以用来只选择第 1 行和第 3 行的选择器是什么?
我试过:
$(".myclass [reference=12345]") // returns nothing
$(".myclass, [reference=12345]") // returns all 4 rows (yes, I know the comma means 'or')
我确信答案很简单,我已经尝试搜索 jQuery 论坛和文档,但我似乎无法弄清楚这个问题。谁能帮忙?
最佳答案
将它们结合起来。从字面上组合它们; 将它们连在一起,不要加任何标点符号。
$('.myclass[reference="12345"]')
您的第一个选择器查找具有属性值的元素,该元素包含在具有该类的元素中。
该空间被解释为 descendant selector .
如您所说,您的第二个选择器查找具有属性值或类或两者的元素。
逗号被解释为 multiple selector运算符——不管它是什么意思(CSS 选择器没有“运算符”的概念;逗号可能更准确地称为定界符)。
关于javascript - 使用 jQuery 组合类选择器和属性选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6246683/