Jaka jest prawidłowa wartość dla atrybutu disabled?

Jaka jest prawidłowa wartość atrybutu disabled dla textbox lub textarea?

Widziałem następujące używane wcześniej:

<input type="text" disabled />
<input type="text" disabled="disabled" />
<input type="text" disabled="true" />

4 answers

  • dla XHTML, <input type="text" disabled="disabled" /> jest prawidłowym znacznikiem.
  • dla HTML5, {[1] } jest poprawne i używane przez W3C na ich przykładach.
  • w rzeczywistości oba sposoby działają na wszystkich głównych przeglądarkach.
 137
Author: Erick Petrucelli,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-01-31 14:54:59

HTML5 spec :

Http://www.w3.org/TR/html5/forms.html#enabling-and-disabling-form-controls:-the-disabled-attribute:

Atrybut checked content jest atrybutem boolean

Http://www.w3.org/TR/html5/infrastructure.html#boolean-attributes :

Obecność atrybutu boolean na elemencie reprezentuje wartość true, a brak atrybutu reprezentuje wartość false.

Jeśli atrybut jest obecny, jego wartość musi być albo pustym łańcuchem znaków, albo wartością, która jest niewrażliwa na wielkość liter w ASCII dla kanonicznej nazwy atrybutu, bez początkowych lub końcowych spacji.

Wniosek :

Następujące są poprawne, równoważne i prawdziwe :

<input type="text" disabled />
<input type="text" disabled="" />
<input type="text" disabled="disabled" />
<input type="text" disabled="DiSaBlEd" />

Następujące są nieprawidłowe :

<input type="text" disabled="0" />
<input type="text" disabled="1" />
<input type="text" disabled="false" />
<input type="text" disabled="true" />

Brak atrybutu jest jedyną poprawną składnią dla false :

<input type="text" />

Zalecenie

Jeśli zależy ci na pisaniu poprawnego XHTML, użyj disabled="disabled", ponieważ <input disabled> jest nieprawidłowy, a inne alternatywy są mniej czytelne. W przeciwnym razie użyj <input disabled>, ponieważ jest krótszy.

 94
Author: Ciro Santilli 新疆改造中心 六四事件 法轮功,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-08-15 14:22:22

Właśnie próbowałem tych wszystkich, i dla IE11, jedyną rzeczą, która wydaje się działać jest disabled= "true". Wartości wyłączone lub nie podano wartości nie działa. W rzeczywistości, jsp dostał błąd, że równe jest wymagane dla wszystkich pól, więc musiałem podać disabled = "true", aby to działało.

 1
Author: Edmond ME,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-06-08 15:07:37

W HTML5 nie ma poprawnej wartości, wszystkie główne przeglądarki nie dbają o to, co atrybut jest, po prostu sprawdzają, czy atrybut istnieje, więc element jest wyłączony.

 0
Author: MadsHaupt,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-07-31 14:42:15