查找具有特定数据属性jQuery的元素

use*_*896 19 javascript jquery html5

我知道我总是可以迭代DOM树并检查数据字段的每个元素,如果值是正确的,但我想要一个更清洁的解决方案.例如

    <div id="theDiv">
       <div>
         <span data-num="3" ></span>
         OTHER HTML
       </div>
       <div>
         <div><span data-num="23"></span><div>
         OTHER HTML
       </div>
       <div>
         <span data-num="3"></span>
         OTHER HTML
       </div>
    </div>
Run Code Online (Sandbox Code Playgroud)

是否有一个jQuery one liner来查找data-num = 3的所有跨度?我知道我可以找到所有的跨度

  $("#theDiv").find(span).each(function(e) { ... });
Run Code Online (Sandbox Code Playgroud)

但我想要像

  $("#theDiv").find(span > data-num=3).each(function(e) { ... });
Run Code Online (Sandbox Code Playgroud)

Ada*_*dam 52

使用属性等于选择器

 $("#theDiv span[data-num='3']")
Run Code Online (Sandbox Code Playgroud)

试试吧!

  • Darn,我正准备写那个.+1无论如何. (3认同)