Jquery 选择具有特定id和缺少属性的所有元素
我正在使用的html有如下标记:Jquery 选择具有特定id和缺少属性的所有元素,jquery,Jquery,我正在使用的html有如下标记: <a id="tag" data="modal" href=#>1</a> <a id="tag" data="modal" href=#>2</a> <a id="abc" href=#>8</a> <a id="tag" href=#>3</a> <a id="tag" data="modal" href=#>4</a> <a id=
<a id="tag" data="modal" href=#>1</a>
<a id="tag" data="modal" href=#>2</a>
<a id="abc" href=#>8</a>
<a id="tag" href=#>3</a>
<a id="tag" data="modal" href=#>4</a>
<a id="tag" href=#>5</a>
<a id="tag" href=#>6</a>
<a id="tag" data="modal" href=#>7</a>
我想选择id=标记且缺少数据属性的所有元素。我尝试使用$('a#tag[data!=modal]')
,但它只返回第一个匹配的元素。当我尝试$('a[data!=modal]')
时,它返回所有缺少数据属性的a元素以及我不想要的id=“abc”
。请给我一些建议
编辑:我知道这不是HTML的结构,但它不是由我控制的,我坚持对它进行分析。不能有多个HTML元素具有相同的ID。在hood下,jQuery将使用
getElementById
,它将只返回第一个元素
但是,您可以将这些更改为类:
<a class="tag" data="modal" href=#>1</a>
ID在文档上下文中必须是唯一的,请改用类。。。现在,这将起作用,但不要使用它….:
$('a[id=tag]:not([data]))
请看,这里的共识是“不,他们不应该”!在一个页面中,一个元素只能有一个id。它在您的文档中应该是唯一的。@A.Wolff谢谢!这起作用了
$(".tag:not([data])")