javascript - 选择具有某个类和具有特定 id 的父级的所有元素

标签 javascript jquery html

在下面的 HTML 中,我尝试创建一个包含所有 innerHTML 的列表。的<h3>但条件是父 div 必须是我传递给它的 id。

<div id="site_somesite.com" class="wrapperSite">
   <h2 class="siteName">somesite.com</h2>
   <div class="placementWrapper">
          <h3 class="placementName" title="above_01"> above_comments_01</h3>
   </div>
   <div class="placementWrapper">
          <h3 class="placementName" title="above_02"> above_comments_02</h3>
   </div>
</div>
<div id="site_anothersite.com" class="wrapperSite">
   <h2 class="siteName">anothersite.com</h2>
   <div class="placementWrapper">
          <h3 class="placementName" title=below_01"> above_comments_01</h3>
   </div>
   <div class="placementWrapper">
          <h3 class="placementName" title="below_02"> above_comments_02</h3>
   </div>
</div>

这是我到目前为止的 jQuery 代码:

   $('.sitePick').click(function(event){
     var placements = ['<ul>'];
     $('.wrapperSite').css("display", "none");
     var site = event.target.hash.replace(/\./, "\\."); // get the id
     console.log(site);
     $(site).show();
     var filter = site.replace('#', '').replace(/\\/g,"").trim(); //
     $('.placementName').each(function(){
       placements += '<li>' + $.trim(this.innerHTML) + '</li>';
     })
     placements += '</ul>';
  });

在此函数中,过滤器保存了我想要使用的 id,但我不知道如何使用它来选择类 placementName 的所有元素。 。 为了让它更清楚一点......我怎样才能创建一个包含所有 <h3> 的列表在带有 id="site_anothersite.com" 的 div 下?

谢谢!

最佳答案

您需要将代码修改为:

var filter = site.replace('#', '').replace(/\\/g,"").trim(); //
$('#'+filter+' .placementName').each(function(){
   placements += '<li>' + $.trim(this.innerHTML) + '</li>';
});

使用 .site 对象并在其中查找 .placementName 元素:

$(site).find('.placementName').each(function(){
   placements += '<li>' + $.trim(this.innerHTML) + '</li>';
});

关于javascript - 选择具有某个类和具有特定 id 的父级的所有元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34717134/

相关文章:

javascript - 处理使用对象破坏和对象休息的组件的 Prop 类型的正确方法是什么......传播收集 Prop

javascript - 使用 CoffeeScript 删除数组的重复元素

javascript - 通过包含字符串的变量设置对象不起作用

javascript - 在 angularjs 中我的点击功能不起作用任何人都可以帮助我

javascript - 设置选择元素的选定值

javascript - 如何使用 javascript 通过加载更多按钮加载 iframe

html - 停止长标题打破 li 列表

Javascript命名,自调用函数

javascript - slider 不是 jQuery 函数

javascript - 使用 javascript 和 Jquery 验证 Gmail ID