如何获得第一个标题孩子?

时间:2014-09-09 12:38:05

标签: jquery

我一直试图获取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

5 个答案:

答案 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();

JSFiddle

答案 3 :(得分:0)

你可以使用jQuery的.eq()http://api.jquery.com/eq/所以

$("#something h3").eq(0).text()

答案 4 :(得分:0)

正如@AnoopJoshi所说,身份证是独一无二的。因此,您可以将它们用作参考,您的搜索速度会更快。 @ AnoopJoshi的另一个答案是:

$('#something').children('h3').first().text()