jQuery Selector无法正常工作

时间:2009-11-23 19:44:14

标签: jquery jquery-selectors

好的,我无法弄清楚我在这里做错了什么......

采用以下jQuery选择器...

$('tr[batchid]:has(span.chkselb input:checked) span[id=assetcount]')

这会返回2个元素。然而,如果我做以下选择器:

$('tr[batchid]:has(span.chkselb input:checked) span#assetcount')

返回0个元素。这两个选择器不是所有意图和目的都相同吗? 或者与“:has”运算符有什么奇怪的交互?我得到它与第一个声明,但我真的很好奇为什么第二个(我的原始选择器)不起作用。任何见解?

1 个答案:

答案 0 :(得分:6)

$('tr[batchid]:has(span.chkselb input:checked) span[id=assetcount]')不应返回两个元素,因为ID必须是唯一的。

这告诉我您正在重新使用ID,我猜您使用的第一个ID与tr[batchid]:has(span.chkselb input:checked)不匹配,因此第二个选择器不会返回任何行。

您应该使ID唯一。