(确实已经提出了一般问题,但此处给出的答案提供了解决此处提出的问题的好方法,而不是其他问题的“幕后”解释...)
我试图突出显示包含输入字段的表格(带有嵌入表格)中的所有单元格。
示例代码:jsFiddle
我可以用$('#rec td:has(>input)')
来做到这一点但我更喜欢使用 .has() method作为 :has() selector 的文档提到性能问题 - 我的表可能会因多个嵌入表而变得相当大,而且我 - 仍然 - 必须支持 IE6...
但是,$('#rec td').has('>input')
不起作用(它包括实际上没有 <input>
作为直接子代的单元格),似乎忽略了 >
子选择器...
有没有办法使用 .has() 方法获得与 :has() 选择器相同的结果?
最佳答案
我相信首先找到所有input
,然后找到它们的父td
会更有效:
$('#rec input').closest('td').css('background-color', 'blue');
这样就不需要检查每个表格单元格及其子单元格。
<强> FIDDLE
关于jquery - 带有 .has() 方法的子选择器不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17504345/