我有以下HTML:
<table id="myTable">
<tr>
<td><div>test</div></td>
</tr>
<tr>
<td><div>test</div></td>
</tr>
</table>
我在变量#myTable
中引用了$myTable
。
如何在不再使用字符串div
的情况下选择所有后代#myTable
标记(即仅使用$myTable
对象)?
澄清一下,假设这个例子有效:
$('#myTable div')
...它无法满足我的标准,因为我不想重新输入#myTable
。
此外,我不希望在层次结构中指定每个父级,如下所示:
$myTable.children('tr').children('td').children('div')
我尝试使用
$myTable.children('div')
...但似乎只选择直接的孩子,div
元素不是。
我想用这样简洁的东西:
$myTable.descendants('div')
答案 0 :(得分:5)
您可以在jQuery中使用find
函数。
$myTable.find('div');
或者,您可以像这样指定范围:
$('div', $myTable);
两者都应该返回相同的集合
答案 1 :(得分:4)
find功能完全符合您的要求。
$myTable.find('div');
答案 2 :(得分:1)
您可能无法测试建议的解决方案,因为您在id属性中包含了“#”。它应该是:
<table id="myTable">
您可以使用$('div', $myTable)
选择后代div。