2

我有以下 html

<div class="wrapper">
    <h5>Testing</h5>
    <ul>
        <li><span class='ent'>test</span></li>
        <li><span class='ent'>test</span></li>
    </ul>
</div>
<div class="wrapper">
    <h5>Testing123</h5>
    <ul>
        <li><span class='ent'>test</span></li>
        <li><span class='ent'>test</span></li>
    </ul>
</div>

我有点击功能

$('.ent').on('click', function() {
    alert($(this).html()); #This works fine
    alert($(this).find('h5').html()) #This is undefined
})

我可以假设这是指当前元素,但我怎样才能获得邻居元素 html。

4

1 回答 1

1

尝试

alert($(this).closest('ul').prev('h5').html());

或者

alert($(this).parent().prev('h5').html());

或者

alert($(this).closest('.wrapper').find('h5').html());


您的代码问题.find()向下查看您的元素在上面的树h5,因此您需要element使用类获取父级wrapper而不是使用find或获取父级ul并使用前一个元素.prev()
参考

.closest()

.parent()

.prev()

。寻找()

于 2013-11-10T03:11:46.137 回答