javascript - 如何在 jQuery 中显示最近的按钮而不使用closest()方法?

标签 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();
});

有没有更好/更快的方法来完成这个任务,而不使用closest()?

最佳答案

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

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

尽管您想使用任何选择器来识别<input>,但这都会超出您使用类的示例的范围。也可以。

关于javascript - 如何在 jQuery 中显示最近的按钮而不使用closest()方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3526351/

相关文章:

javascript - Webpack 依赖于等待 DOM 加载的模块

javascript - 在共享服务器上部署 Angular 渲染的应用程序

javascript - 如何从节点获取元素

javascript - onblur 在 iOS 和 Mac Safari 上禁用单击(外部输入和单击其他输入)也会强制打开键盘并且不会关闭 - (Jquery)

jquery - 如何通过多个选择(包括日期范围)过滤 jQuery 中的结果?

javascript - 选择另一个选择中的选项时隐藏多重选择框中的选项

javascript - 每次循环完成后 promise 履行

javascript - 如何在这篇文章中创建全局变量?

javascript - 为什么 $.fn.find() 中的选择器不能引用超出当前 $ 范围的树?

jquery - 粘性导航在本地主机上工作,但当我在线上传时(在 webkit 浏览器中)则不行