Wenn ein Formularfeld in einem Formular deaktiviert ist, wird der Wert des Formularfelds nicht übermittelt. Manchmal müssen Sie diesen Wert jedoch übermitteln. Es gibt viele Lösungen, wie beispielsweise die Verwendung von schreibgeschützt statt deaktiviert, aber ich denke, keine davon ist besonders gut (die genauen Gründe werden weggelassen). Mir ist eine Lösung eingefallen, die darin besteht, das abzuschickende Formular vor dem Absenden zu kopieren, dann das deaktivierte Attribut aller Formularfelder im kopierten Formular auf „false“ zu setzen und dann das kopierte Formular abzuschicken. Nachfolgend sehen Sie den Demonstrationscode (speichern Sie den Code in einer Datei mit dem Namen „submit.html“, um den Demonstrationseffekt zu beobachten). Code kopieren Der Code lautet wie folgt:<html> <Kopf> <meta http-equiv="Inhaltstyp" content="text/html; charset=shift-jis"> <Titel> Senden </Titel> <Skript> Funktion doSubmit(Formular) { var neueForm = form.cloneNode(true); enableFields(newForm.getElementsByTagName("Eingabe")); enableFields(newForm.getElementsByTagName("Textbereich")); Aktivieren Sie die Felder (newForm.getElementsByTagName("Auswählen")); newForm.style.display = "keine"; Dokument.Body.AnhängenUntergeordnetesElement(neuesFormular); neuesFormular.submit(); } Funktion enableFields(Felder) { für(var i=0;i<Felder.Länge;i++) { var Feld = Felder[i]; wenn (Feldinstanz von (Array)) { für (var j=0;j<Feld.Länge;j++) { Feld[j].deaktiviert = false; } } anders { Feld.deaktiviert = falsch; } } } </Skript> </Kopf> <Text> <form action="submit.html"> <input type="text" name="text" value="tt" deaktiviert/> <input type="radio" name="radio" value="r1" aktiviert deaktiviert>r1 <Eingabetyp="Radio" Name="Radio" Wert="r2">r2 <Eingabetyp="Kontrollkästchen" Name="Kontrollkästchen" Wert="c1">c1 <input type="checkbox" name="checkbox" value="c2" aktiviert deaktiviert>c2 <select name="select" deaktiviert> <optionswert="1">1</option> <optionswert="2">2</option> </Auswählen> <textarea name="textarea" deaktiviert>123</textarea> <input type="button" value="senden" onclick="doSubmit(this.form)"> </form> </body> |
<<: CSS3 realisiert den grafischen Fallanimationseffekt
>>: Erläuterung des Beispiels einer MySQL-Datenanalyse-Speicher-Engine
Lassen Sie mich zunächst über die allgemeine Idee...
Ich verwende tengine, das Installationsverzeichni...
Vorwort Viele Freunde, die gerade mit mobilen End...
Normalerweise verwende ich nginx als Reverse-Prox...
Inhaltsverzeichnis Änderungen an der Rendering-AP...
1. Es gibt zwei Möglichkeiten, globale Variablen ...
Ubuntu 16.04 installiert standardmäßig die PHP7.0...
In diesem Artikelbeispiel wird der spezifische Co...
1. Grundlegende Konzepte 1. Sitemesh ist eine Sei...
Dieser Artikel beschreibt, wie man über Docker ei...
Inhaltsverzeichnis Frage: Fall (1) Fork vor dem E...
Die Fähigkeiten, die Front-End-Entwickler beherrs...
Inhaltsverzeichnis Vorwort: Ubuntu 18.04 ändert d...
1. Umgebungsbeschreibung (1) CentOS-7-x86_64, Ker...
Vorwort Heutzutage gibt es viele Geräte, darunter...