Sowohl die Optionen „Nur lesen“ als auch „Deaktiviert“ verhindern, dass Benutzer den Inhalt von Formularfeldern ändern. Es gibt jedoch subtile Unterschiede zwischen ihnen, die wie folgt zusammengefasst werden können: Readonly ist nur für Eingaben (Text/Passwort) und Textbereiche gültig, während Disabled für alle Formularelemente gültig ist. Wenn jedoch ein Formularelement deaktiviert ist und wir das Formular per POST oder GET übermitteln, wird der Wert dieses Elements nicht weitergegeben, während Readonly den Wert weitergibt (Readonly akzeptiert Wertänderungen und kann zurückgesendet werden, während Disable Änderungen akzeptiert, aber keine Daten zurücksendet). Die häufigsten Situationen sind: In einem Formular ist ein eindeutiger Identifikationscode für den Benutzer vorab eingetragen, den der Benutzer nicht ändern darf. Der Wert muss jedoch beim Absenden übergeben werden. In diesem Fall sollte das Attribut auf schreibgeschützt gesetzt werden. Es kommt häufig vor, dass der Benutzer, nachdem er das Formular offiziell übermittelt hat, warten muss, bis der Administrator die Informationen überprüft hat. Dadurch kann der Benutzer die Daten im Formular nicht ändern, sondern nur anzeigen. Da „Deaktiviert“ eine Vielzahl von Elementen hat, sollte es zu diesem Zeitpunkt verwendet werden. Es ist jedoch zu beachten, dass auch die Schaltfläche „Senden“ deaktiviert werden sollte. Andernfalls wird der Wert in der Datenbank gelöscht, solange der Benutzer diese Schaltfläche drückt und auf der Datenbankbetriebsseite keine Integritätsprüfung durchgeführt wird. Wenn in diesem Fall readonly statt disabled verwendet wird, ist es immer noch in Ordnung, wenn das Formular nur Eingabe- (Text/Passwort) und Textbereichselemente enthält. Wenn andere Elemente vorhanden sind, z. B. select, kann der Benutzer den Wert neu schreiben und zum Senden die Eingabetaste drücken (Eingabe ist die Standardtaste zum Auslösen des Sendens). Wir verwenden häufig JavaScript, um die Schaltfläche „Senden“ zu deaktivieren, nachdem der Benutzer darauf geklickt hat. Dies kann verhindern, dass der Benutzer in einer Umgebung mit schlechten Netzwerkbedingungen wiederholt auf die Schaltfläche „Senden“ klickt, was dazu führt, dass Daten redundant in der Datenbank gespeichert werden. Die Attribute disabled und readonly haben einige Gemeinsamkeiten. Wenn beispielsweise beide auf true gesetzt sind, kann das Formularattribut nicht bearbeitet werden. Beim Schreiben von JS-Code kommt es häufig vor, dass diese beiden Attribute verwechselt werden. Tatsächlich gibt es jedoch einige Unterschiede zwischen ihnen: Wenn die Deaktivierung eines Eingabeelements auf „true“ gesetzt ist, kann das Formulareingabeelement nicht den Fokus erhalten und alle Benutzeroperationen (Mausklicks und Tastatureingaben usw.) sind für das Eingabeelement ungültig. Der wichtigste Punkt ist, dass das Formulareingabeelement beim Absenden des Formulars nicht übermittelt wird. Schreibgeschützt gilt nur für Eingabeelemente wie Texteingabefelder, in die Text eingegeben werden kann. Wenn es auf „true“ gesetzt ist, kann der Benutzer den entsprechenden Text nicht bearbeiten, kann sich aber trotzdem darauf konzentrieren, und beim Senden des Formulars wird das Eingabeelement als Element des Formulars gesendet. |
<<: jQuery implementiert alle Warenkorbfunktionen
>>: Lösen Sie das Problem, dass die mit nginx erhaltene IP-Adresse 127.0.0.1 ist
Generieren Sie SSL-Schlüssel und CSR-Datei mit Op...
Die Vue-Routing-Seite this.route.push wird nicht ...
Code kopieren Der Code lautet wie folgt: <thea...
Vorwort Im Internet gibt es zahlreiche Informatio...
Es gibt drei Hauptmethoden, CSS auf einer Seite zu...
Docker-Installation Über die Installation auf ein...
Inhaltsverzeichnis 1. Beispielszenario 1.1. Legen...
1. Schreiben Sie ein einfaches Java-Programm öffe...
Vorwort Wenn Sie das Attribut „overflow: scroll“ ...
OOM steht für „Out Of Memory“, was so viel bedeut...
Ich habe node.js zum Erstellen des Servers gewähl...
Speicher-Engine Was ist eine Datenbank-Speicher-E...
In Vue können wir lokale Komponenten selbst defin...
Inhaltsverzeichnis Hintergrund Zusammengesetzte I...
Laden eines oder mehrerer Features <Vorlage>...