我试图在表元素中找到所有tr元素。它自己的表元素具有嵌套在其行内的其他表元素。所以当我做以下事情时:
$(tbl).find('tr').hover(...);
...它也会在嵌套表元素中拾取tr元素。我只想要我试图查询的表元素的直接tr元素。
$(tbl).find('>tr').hover(...);
对我不起作用!
ps:tbl
是一个表元素,而不是字符串
答案 0 :(得分:4)
请阅读完整的答案。
$(tbl).children()
如果存在,将为您tbody
和thead
。
所以如果你想要立即tr,你需要尝试这个。
$(TBL)。儿童( 'TBODY')。儿童( 'TR')
在抓取tbody
的孩子时不要忘记考虑table
,因为在Firefox中直接调用$(tbl).children()
之类的孩子会返回tbody
而不是{{1}即使它不在你的标记中。复杂但有用。
快乐编码。
答案 1 :(得分:0)
$(tbl).children('tr').hover(...);
答案 2 :(得分:0)
答案 3 :(得分:0)
不要忘记 - 即使您的标记不包含它们 - 从DOM的角度来看,tr元素嵌套在tbody元素中,因此您需要将它包含在选择器中。
尝试类似......
$(tbl).find('tbody>tr').hover(...);
虽然这可能会找到嵌套表的tbody,所以你可能需要类似......
$(tbl).children().find('tr').hover(...);