我一直试图获取h3内的文本。这是我的HTML:
<td id="something">
<h3>Septembre 2014 Facebook</h3>
<div>
<h3>Comment</h3>
</div>
<table id="budget-channel-table">...
这是我的JQuery代码:
$('#budget-channel-table').parent('#something').find('h3:first-child').text();
但我的结果是:
"September 2014 - Facebookcomment"
我只需要第一个h3
答案 0 :(得分:7)
由于id是唯一的,您可以像这样使用。不必使用.parent()
或其他符合id的元素。
$('#something > h3:first').text()
>
选择器仅搜索直接孩子。
find()
将搜索所有级别的孩子
答案 1 :(得分:2)
使用:first
,ID也必须是唯一的,您只需使用
$('#something').find('h3:first').text();
答案 2 :(得分:0)
使用.children()
方法。从文档: .children()方法与.find()的不同之处在于.children()只沿DOM树向下移动一个级别,而.find()可以遍历多个级别以选择后代元素(孙子)等等。
$('#budget-channel-table').parent('#something').children('h3').text();
答案 3 :(得分:0)
你可以使用jQuery的.eq()http://api.jquery.com/eq/所以
$("#something h3").eq(0).text()
答案 4 :(得分:0)
正如@AnoopJoshi所说,身份证是独一无二的。因此,您可以将它们用作参考,您的搜索速度会更快。 @ AnoopJoshi的另一个答案是:
$('#something').children('h3').first().text()