在jQuery中找到下一个元素

时间:2013-02-11 03:17:32

标签: javascript jquery dom

我有这样的事情:

<div class='span6'>
    <div class='row-fluid'>
       <div class='span2 search'>
          <img src='img.png'/> <!-- when clicked -->
       </div>
       <div class='span10'>
          <div class='name-info' id="test">  <!-- get this id -->
            <h4 class="name"><?php echo $name;?></h4>
            <div class='address'>
              <?php echo $location;?>
           </div>
         </div> <!-- end name-info -->
      </div>
    </div> <!-- end name-block -->
</div>
<div class='span6'>
    <div class='row-fluid'>
       <div class='span2 search'>
          <img src='img.png'/>  <!-- when clicked -->
       </div>
       <div class='span10'>
          <div class='name-info' id="test">  <!-- get this id -->
            <h4 class="name"><?php echo $name;?></h4>
            <div class='address'>
              <?php echo $location;?>
           </div>
         </div> <!-- end name-info -->
      </div>
    </div> <!-- end name-block -->
</div>

$('.search img').on('click',function(){
    alert($(this).next('.name-info').attr("id"));
});

我有两个确切的div并且我正在尝试点击一个img,当我点击图片时,它应该能够获得类name-info的id,我这样做了?我尝试了一些函数但不熟悉所有jQuery函数。需要帮助吗?

谢谢!

4 个答案:

答案 0 :(得分:2)

$(".span2 img").on('click', function () {
    console.log($(this).parent().next().find('.name-info').attr('id'));
});

答案 1 :(得分:1)

这应该

$('.search img').on('click',function(e){
    alert($(this).parent().next().find('.name-info').attr('id'))
});

演示:Fiddle

由于您点击了img元素,因此您需要获取父级的next slibling,然后找到类name-info的元素。

答案 2 :(得分:0)

我认为$('。searchimg')应该是$('。search img')与你想要做的......

答案 3 :(得分:0)

试试这个:

$('.searchimg').on('click',function(){
    alert($(this).parent().next().children('.name-info').attr("id"));
});