查找与所单击按钮最接近的<p> </p>

时间:2012-09-11 12:21:54

标签: jquery

$(document).ready(function()
{
    $('button').on('click', function()
    {            
        $('.container').children().eq(1).append($('p.important').text());
    });
});

<div class="container">
    <p>1</p>
    <p>2</p>

    <button>Lawl, a button.</button>

    <p>3</p>
    <p class="important">Text to be copied</p>
</div>

我想在我的按钮上找到最近的上部p标签。例如,如果我在<p>1</p>下移动按钮,它应该为其附加值。如果我将按钮移到底部,则应将附加值添加到<p>3</p>

是否可以使用我当前的HTML?

3 个答案:

答案 0 :(得分:2)

您可以使用nextprev方法。

  

.next( [selector] ):获取匹配元素集中每个元素的紧随其后的兄弟。如果提供了选择器,则仅当它与该选择器匹配时,它才会检索下一个兄弟。

  

.prev( [selector] ):获取匹配元素集中每个元素的前一个兄弟,可选择由选择器进行过滤。

$('.container button').on('click', function(e) {
      e.preventDefault(); 
      var txt = $('p.important').text();
      $(this).next('p').append(txt);    
});

答案 1 :(得分:1)

试试closest method。它必须做到这一点!

$("button").click(function(){
    $(this).closest('p');
})

答案 2 :(得分:0)