如何在不使用nearest()方法的情况下在jQuery中显示最近的按钮?

时间:2010-08-19 21:21:11

标签: javascript jquery

我有一堆输入和按钮,类似于Facebook的新闻提要:

<div class="section_1">
    <input name="input-name"/>
    <button style="display:none">Save</button>
</div>

我有很多这些(section_2,section_3等)。我可以把id这样:

<div class="section_1">
    <input class="expandableinput" name="input-name" sectionId="1" />
    <button style="display:none" sectionId="1">Save</button>
</div>

并根据部分ID显示按钮(这只是快速伪代码,如果有错误,请原谅我):

$('expandableinput').click(function() {
  var thissectionId = $(this).attr('sectionId');
  $('button[sectionId=thissectionId]').show();
});

有没有更好/更快的方法来实现这一点,而不使用nearest()?

1 个答案:

答案 0 :(得分:0)

您可以使用.next()获取下一个兄弟元素,如下所示:

$('.expandableinput').click(function() {
  $(this).next().show();
});

除了你想用来识别<input>的选择器之外,使用类的例子也是如此。