JavaScript - Form OnSubmit funktioniert aber Aktion nicht
-
13-09-2019 - |
Frage
Auf meinem FORM
, aus irgendeinem Grunde, ich kann meine Form Eingangsgröße über onsubmit
erhalten, aber mit action
nicht.
Das funktioniert:
<form onsubmit="javascript:myFunc(this.city.value);">
<p><input type="text" id="city-field" name="city" onfocus="this.select();" /> <input type="submit" value="Find" /></p>
</form>
Das funktioniert nicht (this.city.value
gefunden wird null zu sein)
<form action="javascript:myFunc(this.city.value);">
<p><input type="text" id="city-field" name="city" onfocus="this.select();" /> <input type="submit" value="Find" /></p>
</form>
Warum ist es, dass onsubmit
die this.city.value
bekommen, aber das action
Ereignis nicht?
Lösung
Das Formular Action-Tag verweist nichts mit this
Verwenden Sie stattdessen eine absolute Lage
action="javascript:myFnc(document.getElementById('city-field').value)"
Andere Tipps
Bearbeiten : Dank Christoph Kommentar unten, erkennen ich meine große Aufsicht. Hier ist die endgültige Lösung mit seinem Vorschlag umgesetzt werden.
<form action="" onsubmit="myFunc(this.city.value); return false;">
<p><input type="text" id="city-field" name="city" onfocus="this.select();" /> <input type="submit" value="Find" /></p>
</form>
Dies sollte das tun, was Sie brauchen. Ich entschuldige mich für Ihnen nicht meine volle Aufmerksamkeit in meiner vorherigen Antwort zu geben.
HTML-Formulare sind für die Einreichung von Daten an ein Skript auf dem Server für die Datenverarbeitung verwendet. Wenn ein Formular übermittelt wird, werden die Daten in den Formularfeldern an den Server in Form von Name-Wert-Paaren übergeben. Serverseitigen Skripts, die in verschiedenen Sprachen geschrieben werden können, werden verwendet, um die eingehenden Daten zu verarbeiten und eine neue HTML-Seite an den Browser zurück. Die Seite an den Browser zurückgegeben alles von einer „Danke für die Registrierung“ könnte aus einer Datenbankabfrage generierte Nachricht oder eine Liste der Suchergebnisse.
da Form für das Senden von Daten an einem anderen Datei auf dem Server ist. in Aktion können wir den Pfad nur, auf die müssen wir die Daten senden. so gibt man kann nicht die Werte erhalten, die die Form aufweist, ist.