JQuery: select 包含具有特定 ID 的元素的元素
JQuery: select element that contains an element with specific ID
如果这是重复的,我们深表歉意。可能是,但我已经搜索过这个特定问题,但没能找到它。
假设我有 HTML 像这样:
<tr>
<td>
<input id="hello">
</td>
<td>
Hello
</td>
</tr>
使用 JQuery 或 Javascript,我想 select 包含 id="hello"
.
输入的 <tr>
这是我目前的尝试:
var id = "hello";
var tr = $("tr:has('#" + id + "')");
但是,这既不专门搜索输入也似乎不起作用。如果您能对此有所说明,我将不胜感激。
您可以尝试通过 id
获取元素,然后 closest()
该元素的 parent
。这似乎是文档中的首选方式。请注意,每页只能有一个 id
。
这是一个例子和一个 link to the documentation:
var yourElement = $("#hello").closest("tr");
如果您浏览文档,您会发现实现相同结果的多种方法。希望对你有帮助。
Jasper,正如haxxxton在评论中提到的,.closest()
jQuery方法是实现此目的最快最简单的方法。
$('#hello').closest('tr');
$('input[id="hello"]').closest('tr'); // more efficient method than escaping dots if say, your id attribute had periods.
看看 JQuery 的 closest()
方法 here。
它向上遍历 DOM 树(从当前元素开始)直到找到与给定选择器匹配的元素。
您的案例示例:
$("#hello").closest("tr")
这可以使用 parents()
方法完成:
var tr = $('#hello').parents('tr');
如果这是重复的,我们深表歉意。可能是,但我已经搜索过这个特定问题,但没能找到它。
假设我有 HTML 像这样:
<tr>
<td>
<input id="hello">
</td>
<td>
Hello
</td>
</tr>
使用 JQuery 或 Javascript,我想 select 包含 id="hello"
.
<tr>
这是我目前的尝试:
var id = "hello";
var tr = $("tr:has('#" + id + "')");
但是,这既不专门搜索输入也似乎不起作用。如果您能对此有所说明,我将不胜感激。
您可以尝试通过 id
获取元素,然后 closest()
该元素的 parent
。这似乎是文档中的首选方式。请注意,每页只能有一个 id
。
这是一个例子和一个 link to the documentation:
var yourElement = $("#hello").closest("tr");
如果您浏览文档,您会发现实现相同结果的多种方法。希望对你有帮助。
Jasper,正如haxxxton在评论中提到的,.closest()
jQuery方法是实现此目的最快最简单的方法。
$('#hello').closest('tr');
$('input[id="hello"]').closest('tr'); // more efficient method than escaping dots if say, your id attribute had periods.
看看 JQuery 的 closest()
方法 here。
它向上遍历 DOM 树(从当前元素开始)直到找到与给定选择器匹配的元素。
您的案例示例:
$("#hello").closest("tr")
这可以使用 parents()
方法完成:
var tr = $('#hello').parents('tr');