javascript 使用jQuery遍历选择DOM目标

ruyhziif  于 12个月前  发布在  Java
关注(0)|答案(2)|浏览(87)

我试图用jQuery动态更新.help-block的内容,但不知道为什么我不能针对.help-block。我知道我们可以简单地使用$('.help-block').text(....,但我需要通过jQuery遍历机制(如find()next()first())来实现这一点,但它们都没有完成这项工作。

$(function() {

  $(".dropdown-menu li a").click(function() {
    $("#selector").find('.help-block').html($(this).text());
    $("#selector").next('.help-block').html($(this).text());
    $("#selector").parent().find('.help-block').html($(this).text());
  });

});

个字符
我做错了什么?

nvbavucw

nvbavucw1#

您的选择器错误。请尝试以下操作。

$("#selector").closest('.dropdown').next('.help-block').html($(this).text());

字符串

mzaanser

mzaanser2#

只是为了表明jQuery真的不需要这样的任务,这里是等效的vanilla JS解决方案:

document.addEventListener('DOMContentLoaded',
  () =>  { 
    for (const link of document.querySelectorAll('.dropdown-menu li a')) { 
      link.addEventListener(
        'click', 
        () => link
          .closest('div.dropdown')
          .nextElementSibling
          .textContent = link.textContent)
    }
  }
);

个字符

相关问题