3

私は現在、jQuery1.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

Firefox16ではなくMSIE8でUL要素で機能しない理由はありますか?ありがとう!

4

3 に答える 3

4

何らかの理由でカスタム属性を使用する必要がある場合は、HTML5data-属性を確認してください。

<ul id="test" data-required="true"></ul>

console.log($('#test').data('required'));

http://ejohn.org/blog/html-5-data-attributes/

http://api.jquery.com/data/#data-html5

于 2012-10-18T09:14:49.063 に答える
1

これは、HTML5requiredが入力要素の有効なプロパティであり、jQuery がこのプロパティの値を返し、ul要素の場合requiredは単に無効な属性であるためです。ul要素にはプロパティがないためrequired、未定義です。

http://www.whatwg.org/specs/web-apps/current-work/multipage/common-input-element-attributes.html#the-required-attribute

于 2012-10-18T09:10:57.843 に答える
-1

以下を使用する必要があります。

$('#test').attr('required')
于 2012-10-18T09:07:50.830 に答える