Quelle est la différence entre disabled=“disabled” readonly=“readonly” pour formulaire HTML champs de saisie?
J'ai lu un peu sur ce sujet, mais je n'arrive pas à trouver quelque chose de solide sur la façon dont les différents navigateurs traiter les choses.
- Andy: Vous mentionnez textarea, mais ne peut-on pas généraliser votre question à l'ensemble des formulaire HTML champs de saisie? L' (v bonne) réponse de @oezi semble le faire. Je vais mettre à jour votre question si vous le voulez bien.
- connexes: "comment faire pour émuler l'attribut lecture seule pour une balise select, et encore obtenir le POSTE de données?" stackoverflow.com/questions/368813/...
Vous devez vous connecter pour publier un commentaire.
Un
readonly
élément est tout simplement pas modifiable, mais est envoyé lorsque la fonctionform
soumet. Undisabled
élément n'est pas modifiable et n'est pas envoyé sur soumettre. Une autre différence est quereadonly
éléments peuvent être concentré (et d'être concentré lors de la "tabulation" par le biais d'un formulaire), tandis quedisabled
éléments ne peuvent pas.Lire plus à ce sujet dans
cet excellent articleou la définition par le w3c. Pour citer, la partie importante:disabled
impliquereadonly
maisreadonly
n'implique pasdisabled
. En d'autres termes, si un élément a de ladisabled
attribut, il n'est pas nécessaire d'inclure aussi lesreadonly
attribut. - Il Correct?Pas d'événements se déclencher lorsque l'élément est d'avoir désactivé attribut.
Aucun des ci-dessous va se déclencher.
Tout en readonly sera déclenchée.
Désactivé signifie qu'aucune des données de cet élément de formulaire sera soumis lorsque le formulaire est soumis. Lecture seule: toutes les données à partir de l'intérieur de l'élément sera soumis, mais il ne peut pas être modifié par l'utilisateur.
Par exemple:
Ce soumettra la valeur "Bob" pour l'élément "votrenom".
Cela va soumettre rien pour l'élément "votrenom".
readonly
etdisabled
sont des valeurs booléennes. Utilisationdisabled
au lieu dedisabled="disabled"
(même pour readonly)disabled="no"
, ce qui n'est pas valide.readonly=""
attrname="attrname"
. De toute façon, il ne semble pas être particulièrement bien documenté, au moins pas ce que je peux trouver. Eh bien, il y a cette - w3.org/TR/html4/intro/sgmltut.html#h-3.3.4.2 - mais il ne mentionne spécifiquement SGML et HTML, pas de XHTML.... trop d'acronymes :SBoolean attributes may legally take a single value: the name of the attribute itself (e.g., selected="selected").
de Sorte que la chaîne vide ne semble pas être valide.Éléments Handicapés attribut ne serait pas soumis ou peuvent dire que leurs valeurs ne serait pas publié avec la demande.
c'est à dire
Différence
Utiliser l'attribut lecture seule dans le cas où vous voulez afficher les données du champ.
c'est à dire
Même que les autres réponses (désactivé n'est pas envoyé au serveur, en lecture seule), mais certains navigateurs empêchent de mettre en évidence une forme désactivée, tout en lecture seule peuvent encore être mis en évidence (et copié).
http://www.w3schools.com/tags/att_input_disabled.asp
http://www.w3schools.com/tags/att_input_readonly.asp