Dies ist, was ich von Firebug in Firefox gefunden habe.
Ist es auch in anderen Browsern so?
Wenn ja, woran liegt das?
Ja, alle Browser sollten die deaktivierten Eingaben nicht senden, da sie schreibgeschützt sind.
Weitere Informationen (Abschnitt 17.12.1)
Attributdefinitionen
disabled [CI] Wenn dieses Boolesche Attribut für ein Formularsteuerelement festgelegt ist, wird das Steuerelement für Benutzereingaben deaktiviert. Wenn festgelegt, hat das deaktivierte Attribut die folgenden Auswirkungen auf ein Element:
- Deaktivierte Steuerelemente erhalten keinen Fokus.
- Deaktivierte Steuerelemente werden in der Tabulatornavigation übersprungen.
- Deaktivierte Steuerelemente können nicht erfolgreich sein.
Die folgenden Elemente unterstützen das Attribut disabled: BUTTON, INPUT, OPTGROUP, OPTION, SELECT und TEXTAREA.
Dieses Attribut wird geerbt, aber lokale Deklarationen überschreiben den geerbten Wert.
Wie deaktivierte Elemente gerendert werden, hängt vom Benutzerprogramm ab. Einige Benutzerprogramme "ausgegraut" beispielsweise deaktivierte Menüelemente, Schaltflächenbeschriftungen usw.
In diesem Beispiel ist das INPUT-Element deaktiviert. Daher kann er keine Benutzereingaben empfangen und sein Wert wird auch nicht mit dem Formular übermittelt.
<INPUT disabled name="fred" value="stone">
Hinweis. Die einzige Möglichkeit, den Wert des deaktivierten Attributs dynamisch zu ändern, ist ein Skript.
Bei der Eingabe von disabled
werden keine Daten übermittelt.
Verwenden Sie das readonly
Attribut:
<input type="text" readonly />
Sie werden nicht übermittelt, weil so steht es in der W3C-Spezifikation .
17.13.2 Erfolgreiche Kontrollen
Eine erfolgreiche Kontrolle ist für die Einreichung "gültig". [snip]
- Deaktivierte Steuerelemente können nicht erfolgreich ausgeführt werden.
Mit anderen Worten, die Spezifikation besagt, dass deaktivierte Steuerelemente als ungültig gelten und nicht gesendet werden sollten.
Sie können drei Dinge verwenden, um Behinderte nachzuahmen:
HTML: readonly
-Attribut (damit der in der Eingabe vorhandene Wert bei der Formularübermittlung verwendet werden kann. Außerdem kann der Benutzer den Eingabewert nicht ändern.)
CSS: 'pointer-events':'none'
(Benutzer am Klicken auf die Eingabe hindern)
HTML: tabindex="-1"
(Benutzer blockieren, um zur Eingabe über die Tastatur zu navigieren)
Disabled
Steuerelemente können nicht erfolgreich sein, und ein erfolgreiches Steuerelement ist für die Übermittlung "gültig". Dies ist der Grund, warum deaktivierte Steuerelemente nicht mit dem Formular gesendet werden.