Jquery只选择此DIV中的内容?

时间:2011-05-04 20:38:00

标签: jquery selector

HTML:

<div class="article">
<div class="article-content">
    <p><a href="javascript:;">Flygor</a> Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam et est sit amet eros inter dum auctor vel semper quam. Vivamus non purus amet.</p>
    <div class="wrap btn-actions">
        <div class="col"><a href="#" class="bt bt-medium" title="Retweet this" target="_blank">REPLY</a>
            <a href="javascript:;" class="bt bt-large retweet">RETWEET</a><a href="javascript:;" class="bt bt-icon">
        </div>
    </div>
</div>

我有这个Javascript:

    $('.retweet').click(function() {
    var retweetText =  $(this).('.article-content p').text();
});

所以我想在DIV.article-content中使用p标签,但只是在这一个。我在页面上有大约10篇文章内容,当这个人点击DIV.retweet时我只想在那个DIV中拉出p标签。

2 个答案:

答案 0 :(得分:3)

实际上你的Javascript非常接近。您需要使用.parents(),因为.article-content.retweet以上的多个父母,然后转到孩子p

编辑:

正如@ShaneBlake指出的那样,.closest()更适合这种情况。 .closest()只会抓取其遍历的第一个.article-content,而.parents()会抓住它们。因此,代码现在。

$('.retweet').click(function() {
   $(this).closest('.article-content').children('p').text();
});

答案 1 :(得分:1)

试试这个:

var retweetText =  $(this).closest('.article-content').children('p').text();