So übermitteln Sie den Wert eines deaktivierten Formularfelds in einem Formular Beispielcode

So übermitteln Sie den Wert eines deaktivierten Formularfelds in einem Formular Beispielcode
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

Artikel empfehlen

Zusammenfassung neuer Anwendungsbeispiele für Calculated in Vue3

Die Verwendung von „Computed“ in vue3. Da vue3 mi...

Beispiel für handschriftliches Vue2.0-Daten-Hijacking

Inhaltsverzeichnis 1: Webpack erstellen 2. Datend...

Zusammenfassung der MySQL-DML-Anweisungen

DML-Operationen beziehen sich auf Operationen an ...

Beispiele für die Interaktion zwischen MySQL und Python

Inhaltsverzeichnis 1. Daten vorbereiten Erstellen...

Beispiel für Auslassungspunkte bei Überlauf von mehrzeiligem CSS-Text

Auslassungspunkte werden angezeigt, wenn mehrzeil...

Data URI und MHTML Komplettlösung für alle Browser

Daten-URI Data URI ist ein durch RFC 2397 definie...

Verwenden von NTP zur Zeitsynchronisierung in Ubuntu

NTP ist ein TCP/IP-Protokoll zur Zeitsynchronisie...

CocosCreator implementiert Skill-Kühleffekt

CocosCreator realisiert Skill-CD-Effekt In vielen...

Tutorial zur Installation und Konfiguration von MySQL Workbench unter CentOS

In diesem Artikel finden Sie das Installations- u...

Vue3 AST Parser-Quellcode-Analyse

Inhaltsverzeichnis 1. Generieren Sie einen abstra...

Vue implementiert Mehrfachauswahl im unteren Popup-Fenster

In diesem Artikelbeispiel wird der spezifische Co...

MySQL-Vorkompilierung in einem Artikel verstehen

1. Vorteile der Vorkompilierung Wir haben alle di...