Javascript 查找具有特定数据属性jQuery的元素
我知道我总是可以遍历DOM树,检查每个元素的数据字段以及值是否正确,但我希望有一个更干净的解决方案。比如说Javascript 查找具有特定数据属性jQuery的元素,javascript,jquery,html,Javascript,Jquery,Html,我知道我总是可以遍历DOM树,检查每个元素的数据字段以及值是否正确,但我希望有一个更干净的解决方案。比如说 <div id="theDiv"> <div> <span data-num="3" ></span> OTHER HTML </div> <div> <div><span data-num="23
<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>
但是我想要像这样的东西
$("#theDiv").find(span > data-num=3).each(function(e) { ... });
使用
仅用于示例(过滤器)
是的,有,但我忘了确切的语法,但我相信有人会给你的。或者你可以通过属性valueDarn查找css来找到选择器,我正要写这个+无论如何,这里的选择器也不正确。它正在查找id为的元素上的数据属性,而不是跨度@是的,我修好了。谢谢谢谢到处都是选票。工作完美(我在玩弄旧的例子,它不工作,但我现在知道为什么:)。是否有任何方法可以使用相同的语法来查找data num=ANYTHING的跨度?因为并非所有跨距都有数据-num@user974896只需省略
='3'
部分就可以了,因为它不想覆盖所有的跨度,只需要一个简单的一行。
$("#theDiv").find(span > data-num=3).each(function(e) { ... });
$("#theDiv span[data-num='3']")
$('#theDiv span').filter(function(){ return $(this).data("num") == 3});