首页 > 解决方案 > 从列表中获取具有属性的元素

问题描述

我得到了多个元素的列表,您可以在下面的示例片段中找到,我想获取具有特定属性的所有元素("test"=true)

$(function() {
  let elements = $(".myClass") // This property can no be changed so all I got is a variable that includes the callback of multiple jQuery elements.
 
    
  // How to extract all elements with the "test"-attribute from the elements property without using a each function?  
  console.log(elements)
  $(elements).each(function() {
    console.log($(this).attr("test") === "true")
  })

})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>


<div class="myClass">A</div>
<div class="myClass">B</div>
<div class="myClass" test=true>C</div>

是否有任何method仅提取具有特定属性的元素,例如名为 test 的属性?任何帮助将非常感激。

标签: javascriptjquery

解决方案


您可以过滤掉找到的元素。

$(function() {
  let elements = $(".myClass")
  
  console.log( elements.filter('[test="true"]').get() );
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>


<div class="myClass">A</div>
<div class="myClass">B</div>
<div class="myClass" test=true>C</div>


推荐阅读