如果我已经引用了某个项目,则在 jQuery 中选择后代

发布于 2024-10-05 19:47:38 字数 835 浏览 3 评论 0原文

我有以下 HTML:

<table id="myTable">
  <tr>
    <td><div>test</div></td>
  </tr>
  <tr>
    <td><div>test</div></td>
  </tr>
</table>

我在变量 $myTable 中引用了 #myTable

如何在不再次使用字符串 #myTable 的情况下选择所有后代 div 标记(即仅使用 $myTable 对象)?

为了澄清,假设这个例子有效:

$('#myTable div')

...它不符合我的标准,因为我不想重新输入#myTable

此外,我不想像这样指定层次结构中的每个父级:

$myTable.children('tr').children('td').children('div')

我尝试使用

$myTable.children('div')

... 但它似乎只选择直接子级,而 div 元素则不是。

我想使用这样简洁的东西:

$myTable.descendants('div')

I have the following HTML:

<table id="myTable">
  <tr>
    <td><div>test</div></td>
  </tr>
  <tr>
    <td><div>test</div></td>
  </tr>
</table>

I have a reference to #myTable in the variable $myTable.

How can I select all descendant div tags without using the string #myTable again (i.e. use the $myTable object only)?

To clarify, assuming this example worked:

$('#myTable div')

... it fails to meet my criteria, since I don't want to retype #myTable.

Additionally, I'd prefer not having to specify each parent in the hierarchy like this:

$myTable.children('tr').children('td').children('div')

I tried using

$myTable.children('div')

... but it seems to only select immediate children, which the div elements are not.

I want to use something terse like this:

$myTable.descendants('div')

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

梓梦 2024-10-12 19:47:38

您可以使用 jQuery 中的 find 函数。

$myTable.find('div');

或者,您可以这样指定范围:

$('div', $myTable);

两者都应返回相同的集合

You can use the find function in jQuery.

$myTable.find('div');

Alternatively you can specify the scope like this:

$('div', $myTable);

both should return the same set

裂开嘴轻声笑有多痛 2024-10-12 19:47:38

find 函数正是您想要的。

$myTable.find('div');

The find function does exactly what you want.

$myTable.find('div');

笑叹一世浮沉 2024-10-12 19:47:38

您可能无法测试建议的解决方案,因为您在 id 属性中包含了“#”。它应该是:

<table id="myTable">

并且您可以只使用 $('div', $myTable) 来选择后代 div。

在此处查看解决方案

You might have trouble testing the suggested solutions because you have included the "#" in your id attribute. It should be:

<table id="myTable">

And you can just use $('div', $myTable) to select the descendant divs.

Check out solution here

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文