テキストボックスまたはテキストエリアのdisabled
属性の正しい値は何ですか?
私は前に使用される次を見ました:
<input type="text" disabled />
<input type="text" disabled="disabled" />
<input type="text" disabled="true" />
<input type="text" disabled="disabled" />
は有効なマークアップです。<input type="text" disabled />
は有効であり、W3Cのサンプルで使用されています。HTML5仕様:
http://www.w3.org/TR/html5/forms.html#enabling-and-disabling-form-controls:-the-disabled-attribute :
チェックされたコンテンツ属性はブール属性です
http://www.w3.org/TR/html5/infrastructure.html#boolean-attributes :
要素のブール属性の存在は真の値を表し、属性の不在は偽の値を表します。
属性が存在する場合、その値は空の文字列か、属性の正規名と大文字小文字を区別しないASCIIで、先頭または末尾に空白がない値でなければなりません。
結論:
以下は、有効、同等、およびtrueです。
<input type="text" disabled />
<input type="text" disabled="" />
<input type="text" disabled="disabled" />
<input type="text" disabled="DiSaBlEd" />
以下はinvalidです。
<input type="text" disabled="0" />
<input type="text" disabled="1" />
<input type="text" disabled="false" />
<input type="text" disabled="true" />
falseの唯一の有効な構文は、属性がないことです。
<input type="text" />
推奨事項
有効なXHTMLの作成を気にする場合は、disabled="disabled"
が無効であり、他の選択肢は読みにくいため、<input disabled>
を使用します。それ以外の場合は、<input disabled>
を短くしてください。
これらすべてを試してみましたが、IE11の場合、動作するように見える唯一のものはdisabled = "true"です。無効の値または指定された値が機能しませんでした。実際のところ、jspにはすべてのフィールドでequalが必要であるというエラーが発生したため、これを機能させるためにdisabled = "true"を指定する必要がありました。
HTML5では、正しい値はありません。すべての主要なブラウザーは属性が何であるかを実際に気にしません。属性が存在するかどうかをチェックするだけなので、要素は無効になります。