我目前正在关注jQuery 1.8.2的以下问题。
自定义属性适用于例如输入字段:
<input id="test" required="true">
$("#test").prop("required")
true
$("#test").get(0).required
true
但不是UL元素。
<ul id="test" required="true"></ul>
$("#test").prop("required")
undefined
$("#test").get(0).required
undefined
为什么它不适用于Firefox 16中的UL元素但是在MSIE 8中?谢谢!
答案 0 :(得分:4)
如果您出于某种原因需要使用自定义属性,请查看HTML5 data-
属性。
<ul id="test" data-required="true"></ul>
console.log($('#test').data('required'));
答案 1 :(得分:1)
这是因为HTML5 required
是输入元素的有效属性,而jQuery返回此属性的值,而ul
元素required
只是一个无效的属性。 <{1}}元素没有ul
属性,因此未定义。
答案 2 :(得分:-1)
您必须使用:
$('#test').attr('required')