我有这样的HTML,
<a id="a_1" href="#" disabled_onclick="true">Link1</a>
<a id="a_2" href="#">Link2</a>
<a id="a_3" href="#" disabled_onclick="true">Link3</a>
<input id="b_1" type="submit" disabled_onclick="true">Button1</input>
<input id="b_2" type="submit">Button2</input>
<input id="b_3" type="submit">Button3</input>
现在我需要编写一个jQuery,它返回我的html中的所有属性,其中disabled_onclick属性设置为true。在这种情况下,我应该得到3个元素,两个链接标记和一个输入标记。
答案 0 :(得分:10)
Here如何选择所有这些元素:
$('[disabled_onclick="true"]');
自true
is a valid unquoted attribute value in CSS起,您甚至可以omit the quotes:
$('[disabled_onclick=true]');
如果您关心有效的HTML,则应考虑使用自定义data-*
属性。
<input id="b_1" type="submit" disabled_onclick="true">
<!-- …becomes… -->
<input id="b_1" type="submit" data-disabled-onclick="true">
这样它就是有效的HTML,你仍然可以按如下方式选择它:
$('[data-disabled-onclick="true"]');
答案 1 :(得分:4)
试试这个
$('[disabled_onclick="true"]')
答案 2 :(得分:1)
$('input[disabled_onclick="true"]');
请参阅http://api.jquery.com/attribute-equals-selector/
在上面一行中,您只查询input nodes
,您可以省略input
,然后查询整个标记中的所有节点(这可能有点慢)
$('[disabled_onclick="true"]');