Heim  >  Artikel  >  Web-Frontend  >  So lösen Sie das Formular-Reset: Reset ist kein Funktionsfehler

So lösen Sie das Formular-Reset: Reset ist kein Funktionsfehler

一个新手
一个新手Original
2017-10-14 09:42:572922Durchsuche

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: nameid

Nun, ein kleines Problem, das durch die Benennung verursacht wurde, ist mir zu diesem Zeitpunkt aufgefallen, der
<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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn