Die spezifischen Anforderungen lauten wie folgt:
Binden Sie das Beforeunload-Ereignis an das Fenster und prüfen Sie, ob der Eingabeinhalt beim Wechseln oder Schließen der Seite gespeichert wurde. Das Beforeunload-Ereignis wird jedoch auch ausgelöst, wenn auf die Schaltfläche „Senden“ geklickt wird . Wie kann verhindert werden, dass die Formularübermittlung dieses Ereignis auslöst?
Teil des Codes:
<code> if ($scope.model.isSaving) { window.onbeforeunload = function (e) { e = e || window.event; // 兼容IE8和Firefox 4之前的版本 if (e) { e.returnValue = '关闭提示'; } // Chrome, Safari, Firefox 4+, Opera 12+ , IE 9+ return '关闭提示'; }; }</code>
Sie können die Bindung im Submit-Ereignis der Schaltfläche aufheben
<code>$(window).off('beforeunload')或者window.onbeforeunload = null; </code>
Die spezifischen Anforderungen lauten wie folgt:
Binden Sie das Beforeunload-Ereignis an das Fenster und prüfen Sie, ob der Eingabeinhalt beim Wechseln oder Schließen der Seite gespeichert wurde. Das Beforeunload-Ereignis wird jedoch auch ausgelöst, wenn auf die Schaltfläche „Senden“ geklickt wird . Wie kann verhindert werden, dass die Formularübermittlung dieses Ereignis auslöst?
Teil des Codes:
<code> if ($scope.model.isSaving) { window.onbeforeunload = function (e) { e = e || window.event; // 兼容IE8和Firefox 4之前的版本 if (e) { e.returnValue = '关闭提示'; } // Chrome, Safari, Firefox 4+, Opera 12+ , IE 9+ return '关闭提示'; }; }</code>
Sie können die Bindung im Submit-Ereignis der Schaltfläche aufheben
<code>$(window).off('beforeunload')或者window.onbeforeunload = null; </code>
Schaltflächenereignisse binden, Ajax-Sendeformular
Bleiben Sie nach dem Absenden des Klickereignisses auf der aktuellen Seite und lösen Sie dieses Ereignis nicht aus! Ich weiß nicht, ob das funktioniert?
Sie können Ajax verwenden, um das Formular einzureichen und die zurückgegebenen Ergebnisse zu erhalten.