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

mysql Backup-Skript und halten Sie es für 7 Tage

Skriptanforderungen: Sichern Sie die MySQL-Datenb...

So zeigen Sie den Typ des gemounteten Dateisystems in Linux an

Vorwort Wie Sie wissen, unterstützt Linux viele D...

Die Umsetzung von Youdas neuem Petite-Vue

Inhaltsverzeichnis Vorwort Einführung Live Einfac...

Tipps zur Optimierung von MySQL SQL-Anweisungen

Wenn wir mit einer SQL-Anweisung konfrontiert wer...

Inhaltstypbeschreibung, d. h. der Typ des HTTP-Anforderungsheaders

Um den Inhaltstyp zu lernen, müssen Sie zunächst ...

Analyse und Anwendung des Wasserfallflussprinzips unregelmäßiger Bilder

Das im Projekt aufgetretene Layoutproblem unregel...

So stellen Sie ein SpringBoot-Projekt mit Docker bereit

Die Entwicklung der Docker-Technologie bietet ein...

Beim Bereitstellen von rabbitmq mit Docker sind zwei Probleme aufgetreten

1. Hintergrund Die folgenden zwei Probleme treten...