Heim > Artikel > Web-Frontend > So lösen Sie das Formular-Reset: Reset ist kein Funktionsfehler
Tatsächlich bin ich vor langer Zeit auf diesen Fehler gestoßen, und er hat mich auch einige Zeit gekostet. Nachdem ich das Formular beispielsweise mit Ajax eingereicht habe, musste ich es zurücksetzen Um wiederholte Übermittlungen durch Benutzer zu vermeiden, lautet die normale HTML-Struktur des Formulars wie folgt:
<form action="" method="post" id="LoginForm"> <input type="text" name="username" value="" /> <input type="password" name="password" value="" /> <input type="submit" id="submit" name="submit" value="Login" /> <input type="reset" id="reset" name="reset" value="Reset" /> </form>
Wenn Sie zum Zurücksetzen einfach JavaScript verwenden müssen, können Sie dies tun Verwenden Sie document.getElementById('LoginForm').reset()
, um dies zu erreichen. Wenn Sie jQuery verwenden, verwenden Sie $('#LoginForm')[0].reset()
oder $('#LoginForm').trigger("reset")
, aber für die oben genannten Formulare, die in HTML entworfen wurden, sind diese Methoden zum Zurücksetzen des Formulars ungültig! FireBug-Debugging-Tipp ...reset is not a function
, was ist hier das Problem? Manchmal glaubt man nie, dass eine kleine schlechte Angewohnheit erhebliche Probleme verursachen wird. Nachdem ich lange im Internet gesucht hatte, fand ich die Antwort auf Stackoverflow . Es stellt sich heraus, dass das Problem in der Reset-Schaltfläche liegt. Konzentrieren wir uns auf den HTML-Code, der durch die Reset-Schaltfläche implementiert wird:
<input type="reset" id="reset" name="reset" value="Reset" />
Das Problem liegt hier im id="reset"
und name="reset"
deckt die ursprüngliche reset
-Methode ab und fordert reset
auf. Die Lösung ist auch sehr einfach. Vermeiden Sie die Verwendung des Schlüsselworts is not a function
und reset
der Schaltfläche reset
. Die folgende Benennungsmethode ist beispielsweise sicherer: name
id
<input type="reset" id="ResetButton" name="ResetButton" value="Reset" />und
enthält , wird es dazu führen, dass die Methode id="submit"
des Formulars fehlschlägt? Da ich zum Einreichen Ajax verwendet habe, habe ich mich nicht näher mit diesem Thema befasst. Vielleicht wäre es besser, name="submit"
und submit()
in andere Namen zu ändern, z. B. id="submit"
und name="submit"
. id="SubmitButton"
Das obige ist der detaillierte Inhalt vonSo lösen Sie das Formular-Reset: Reset ist kein Funktionsfehler. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!