如何使用jquery检查<a>标签上的"禁用"属性?

cod*_*der 30 html jquery

我有一个标签的disabled='disabled'属性<a>.如何使用jquery测试此属性是否在我的标签上?以下代码返回undefined.我可以disabled在firebug中看到标签上的属性,并且锚上的所有其他属性使用相同的语法成功返回.我意识到disabled<a>标签的自定义属性.

$('#anchorID').attr('disabled');
Run Code Online (Sandbox Code Playgroud)

bar*_*iir 52

尝试

$('#anchorID').is('[disabled=disabled]')
Run Code Online (Sandbox Code Playgroud)

如果disabled="disabled"是元素的属性,则返回true .

  • 真棒......节省了我的一天! (3认同)

Aym*_*adi 42

新的和改进的方法是使用jQuery的prop()功能:http://api.jquery.com/prop/#prop1

$('#anchorID').prop("disabled");

在特定情况下,属性和属性之间的差异可能很重要.在jQuery 1.6之前,.attr()方法有时在检索某些属性时会考虑属性值,这可能会导致行为不一致.从jQuery 1.6开始,.prop()方法提供了一种显式检索属性值的方法,而.attr()则检索属性.

  • 这是一个非常有用的答案,但它没有为我的字段返回正确的值. (3认同)
  • 这实际上不适用于 &lt;a&gt; 标签。不过它对 &lt;input&gt; 和 &lt;button&gt; 标签很有用。@bardiir 的回答更好。 (2认同)

iam*_*eed 9

尝试:

$('#anchorID').prop("disabled");
Run Code Online (Sandbox Code Playgroud)

看到:

http://api.jquery.com/prop/#prop1

更新:+1给Ayman Safadi的答案.