Heim > Artikel > Web-Frontend > JavaScript verhindert Routing-Sprünge
In der Webentwicklung ist der Routensprung ein sehr häufiger Vorgang. Wenn ein Benutzer auf einen Link klickt oder ein Formular absendet, springt die Seite zu einer anderen Seite. Aber manchmal möchten wir in der Lage sein, den Sprung zu steuern, wenn der Benutzer auf einen Link klickt oder ein Formular sendet, z. B. um die Gültigkeit der Formulardaten zu überprüfen oder um Datenverluste aufgrund von Fehlbedienungen des Benutzers zu verhindern. In diesem Fall müssen wir JavaScript verwenden, um Routing-Sprünge zu verhindern.
1. Linksprünge verhindern
Wenn ein Benutzer auf einen Link klickt, springt der Browser standardmäßig zur entsprechenden Seite. Wenn wir jedoch vor dem Springen, wenn der Benutzer auf den Link klickt, eine Verarbeitung durchführen möchten, müssen wir das standardmäßige Sprungverhalten verhindern. Wir können diese Funktionalität erreichen, indem wir etwas JavaScript-Code in das Onclick-Ereignis des Links einfügen.
Hier ist zum Beispiel ein Link:
<a href="http://www.example.com" onclick="return false;">点击我不会跳转</a>
Durch Hinzufügen von „return false;“ im onclick-Ereignis können Sie das Standardsprungverhalten des Links verhindern.
Zusätzlich zur Verwendung von „return false;“ können Sie auch die Methode event.preventDefault() verwenden, um das Standardsprungverhalten zu verhindern. Zum Beispiel:
<a href="http://www.example.com" onclick="event.preventDefault();">点击我不会跳转</a>
2. Formularübermittlung verhindern
Wenn der Benutzer das Formular übermittelt, sendet der Browser die Formulardaten an den Server und springt zu der vom Server zurückgegebenen Seite. Ebenso können wir das Formular auch vor dem Absenden verarbeiten und das standardmäßige Sprungverhalten verhindern. Wir können diese Funktionalität erreichen, indem wir dem onsubmit-Ereignis des Formulars JavaScript-Code hinzufügen.
Hier ist zum Beispiel ein Formular:
<form onsubmit="return false;"> <input type="text" name="username"> <input type="password" name="password"> <button type="submit">提交</button> </form>
Sie können das standardmäßige Übermittlungsverhalten des Formulars verhindern, indem Sie „return false;“ zum onsubmit-Ereignis hinzufügen.
Ähnlich können Sie auch die Methode event.preventDefault() verwenden, um das Standardübermittlungsverhalten zu verhindern. Zum Beispiel:
<form> <input type="text" name="username"> <input type="password" name="password"> <button type="submit" onclick="event.preventDefault();">提交</button> </form>
3. Routensprünge verhindern
Zusätzlich zur Verhinderung des Standardsprungverhaltens bei Links und Formularen können wir Routensprünge auch durch JavaScript verhindern. Im Browser können wir die URL der aktuellen Seite über das Standortattribut des Fensterobjekts abrufen und zum Springen ändern.
Zum Beispiel können wir die URL der aktuellen Seite in die URL einer anderen Seite ändern, um einen Routensprung zu erreichen:
window.location.href = "http://www.example.com";
Wenn wir vor dem Sprung eine Verarbeitung durchführen möchten, z. B. die Überprüfung von Formulardaten, können wir sie in hinzufügen Code Bedingtes Urteil.
Das Folgende ist beispielsweise ein Formular:
<form> <input type="text" name="username"> <input type="password" name="password"> <button type="button" onclick="checkForm()">提交</button> </form>
Rufen Sie die Funktion checkForm() im Ereignis onclick auf. Wenn die Überprüfung fehlschlägt, wird kein Sprung durchgeführt.
function checkForm() { // 表单数据验证 if (验证失败) { return; } window.location.href = "http://www.example.com"; }
Zusammenfassung
In der Webentwicklung ist das Blockieren von Routensprüngen ein sehr häufiger Vorgang. Wir können diese Funktionalität über JavaScript in Links, Formulare und Code implementieren. Indem wir Routensprünge verhindern, können wir einige Verarbeitungen oder Prüfungen durchführen, nachdem der Benutzer auf einen Link geklickt oder ein Formular gesendet hat, um Datenverluste oder Sicherheitsprobleme zu vermeiden, die durch Fehlbedienungen des Benutzers verursacht werden.
Das obige ist der detaillierte Inhalt vonJavaScript verhindert Routing-Sprünge. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!