Groups | Search | Server Info | Keyboard shortcuts | Login | Register


Groups > de.comp.lang.javascript > #5306

onsubmit mehrfach auslösen

From Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich)
Newsgroups de.comp.lang.javascript
Subject onsubmit mehrfach auslösen
Date 2022-02-03 14:14 +0000
Message-ID <3t61fbe070i162037n3e8%sfroehli@Froehlich.Priv.at> (permalink)

Show all headers | View raw


Vor Jahrzehnten (buchstäblich zu verstehen) hatte ich eine Reihe von
Formularen mit:

#v+
<form onsubmit="return onesubmitonly();">
</form>
#v-

versehen, um mehrfaches Triggern der gleichen, etwas länger
dauernden Aktion zu verhindern, wobei onesubmitonly() recht simpel
gehalten ist:

#v+
var isSubmitted;
function onesubmitonly() {
	if (isSubmitted) return false;
	isSubmitted = true;
	return true;
}
#v-

Das hat so gut funktioniert, dass ich vollkommen darauf vergessen
hatte, bis vor kurzem eine verschärfte CSP-Policy die Inline-Handler
deaktiviert hat.

Ein erster Versuch zur Neugestaltung sieht so aus:

#v+
<form id="61fbe1414dff6">
</form>
<script type="text/javascript" nonce="xxxxx">
	document.getElementById("61fbe1414dff6").addEventListener('submit',
	      function(e) { return onesubmitonly(); });
</script>
#v-

Für den ersten Klick funktioniert das auch, das Skript wird
beim Klick auf den Submit-Button aufgerufen (nonce, id und
Funktionsnamen sind also wohl korrekt).  Dummerweise gilt das aber
nicht für alle weiteren Klicks, wenn der Benutzer nur schnell genug
ist - die gehen weiterhin durch.

Was habe ich da schon wieder grundsätzliches übersehen?

Servus,
   Stefan

-- 
http://kontaktinser.at/ - die kostenlose Kontaktboerse fuer Oesterreich
Offizieller Erstbesucher(TM) von mmeike

Stefan - die Verkündigung des prächtigen Träumens.</b
(Sloganizer)

Back to de.comp.lang.javascript | Previous | NextNext in thread | Find similar


Thread

onsubmit mehrfach auslösen Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2022-02-03 14:14 +0000
  Re: onsubmit mehrfach auslösen Stefan Reuther <stefan.news@arcor.de> - 2022-02-03 17:23 +0100
    Re: onsubmit mehrfach auslösen Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2022-02-03 18:29 +0000
      Re: onsubmit mehrfach auslösen Stefan Reuther <stefan.news@arcor.de> - 2022-02-04 16:51 +0100
        Re: onsubmit mehrfach auslösen Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2022-02-04 20:25 +0000
          Re: onsubmit mehrfach auslösen Stefan Reuther <stefan.news@arcor.de> - 2022-02-05 10:24 +0100
            Re: onsubmit mehrfach auslösen Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2022-02-05 09:56 +0000

csiph-web