Readonly und deaktiviert ermöglichen es den Benutzern, den Inhalt im Feld Formular nicht zu ändern. Es gibt jedoch geringfügige Unterschiede zwischen ihnen, und die Zusammenfassung lautet wie folgt:
Readonly funktioniert nur für Eingaben (Text/Passwort) und TextArea, während deaktiviert für alle Formularelemente gültig ist. Nachdem das Formularelement deaktiviert wurde, wird der Wert dieses Elements jedoch nicht ohnmächtig, wenn wir das Formular in Post oder GET einreichen, und readonly den Wert ausgeht (readonly akzeptiert die Wertänderung und kann zurückgegeben werden, deaktiviert die Änderung, aber die Daten nicht zurückgibt).
Im Allgemeinen sind die am häufigsten verwendeten Situationen:
Ein eindeutiger Identifikationscode wird für den Benutzer in einem Formular vorgefüllt, und der Benutzer erlaubt keine Änderungen, aber der Wert muss beim Senden übergeben werden, und seine Eigenschaften sollten auf readonly festgelegt werden.
Es wird häufig auftreten, wenn der Benutzer offiziell das Formular einreicht und auf die Überprüfung der Informationen des Administrators warten muss. Auf diese Weise kann der Benutzer die Daten nicht erneut in Form ändern, sondern kann sie nur anzeigen. Da der Bereich der deaktivierten Elemente groß ist, sollte zu diesem Zeitpunkt deaktiviert werden, aber gleichzeitig sollte beachtet werden, dass auch die Subjekttaste deaktiviert werden sollte. Andernfalls wird der Wert in der Datenbank gelöscht, solange der Benutzer diese Taste drückt, wenn keine Integritätserkennung auf der Seite "Datenbankbetriebseite durchgeführt wird". Wenn Sie in diesem Fall Readonly anstelle von deaktiviert verwenden, ist dies, wenn nur Eingaben (Text/Passwort) und TextArea -Elemente im Formular vorhanden sind, noch möglich. Wenn andere Sendeelemente wie SELECT vorhanden sind, kann der Benutzer die Eingabetaste nach dem Umschreiben des Wertes eingeben (eingeben ist die Standard -Sendel -Trigger -Taste).
Wir verwenden häufig JavaScript, um die Schaltfläche Senden zu deaktivieren, nachdem der Benutzer die Schaltfläche Sendeneingänge gesendet hat. Dies kann den Benutzer daran hindern, wiederholt auf die Schaltfläche Senden in Umgebungen mit schlechten Netzwerkbedingungen zu klicken, wodurch die Daten in der Datenbank redundant gespeichert werden.
Die beiden Eigenschaften von Behinderten und Readonly haben einige Gemeinsamkeiten. Wenn beispielsweise beide auf True eingestellt sind, wird die Formulareigenschaft nicht bearbeitet. Es ist oft einfach, diese beiden Eigenschaften beim Schreiben von JS -Code zu mischen. Tatsächlich gibt es bestimmte Unterschiede zwischen ihnen:
Wenn das deaktivierte Eingabelement auf TRUE eingestellt ist, kann das Formulareingangselement keinen Fokus erhalten und alle Operationen des Benutzers (Mausklicks und Tastatureingänge usw.) für das Eingabeelement ungültig sind. Der wichtigste Punkt ist, dass beim Einreichen des Formulars das Formulareingabemittel nicht eingereicht wird.
Readonly ist nur für Eingabeelemente gedacht, die Text wie Texteingangsfelder eingeben können. Wenn der Benutzer den entsprechenden Text nicht bearbeiten kann, kann sich jedoch auf den Fokus konzentrieren, und wenn das Formular eingereicht wird, wird das Eingabeelement als Formular eingereicht.