Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


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

Re: onsubmit mehrfach auslösen

From Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich)
Newsgroups de.comp.lang.javascript
Subject Re: onsubmit mehrfach auslösen
Date 2022-02-03 18:29 +0000
Message-ID <1t61fc1d81i16ad1bn3e8%sfroehli@Froehlich.Priv.at> (permalink)
References <3t61fbe070i162037n3e8%sfroehli@Froehlich.Priv.at> <sth32r.3is.1@stefan.msgid.phost.de>

Show all headers | View raw


On Thu, 03 Feb 2022 17:23:39 Stefan Reuther wrote:
> Am 03.02.2022 um 15:14 schrieb Stefan Froehlich:
>> #v+
>> <form id="61fbe1414dff6">
>> </form>
>> <script type="text/javascript" nonce="xxxxx">
>>       document.getElementById("61fbe1414dff6").addEventListener('submit',
>>             function(e) { return onesubmitonly(); });
>> </script>
>> #v-
> 
> Wo ist denn 'onesubmitonly' in der Version definiert?

In einem externen File.

> (Wenn ich das richtig sehe, muss das nonce auch noch vom Server in
> einem Header ausgeliefert werden? Kann der nicht gleich einen
> "CSP: mir egal" Header ausliefern, um alle inline-Skripte
> freizuschalten?)

Könnte er natürlich, aber damit würde sich der Kreis schließen: Ich
mache den Kopfstand deshalb, weil ein Security-Consultant das
onsubmit="" als Böse[TM] markiert hat, und sich in solchen Fällen
immer der größere durchsetzt - das bin nicht ich.

> Ich würde das Skript in eine separate Datei packen, dann
> 
>     <form class="one-only">
> 
> und
> 
>     document.addEventListener('DOMContentLoaded', function() {
>         var es = document.getElementsByClassName('one-only');
>         for (var i = 0; i < es.length; ++i) {
>             es[i].addEventListener(...);
>         }
>     });

Naja, ob ich es jetzt über die Klasse oder über die Id referenziere,
ist dann auch schon egal (letzteres ist ein Akt der Bequemlichkeit,
mein Framework tut das weitgehend automatisch für mich).

Ich hab jetzt Minimalbeispiele auf meinen Server gestellt:

Neu: <http://froehlich.priv.at/test.php> funktioniert nicht
Alt: <http://froehlich.priv.at/test2.php> funktioniert

Der Button tut nichts, ausser die Seite noch einmal zu laden, und
deren einziger Zweck ist eine Verzögerung von 1 Sekunde; den Effekt
triggert man durch sehr rasches, mehrfaches Anklicken des Buttons.
Ohne Zugriff auf das Serverlog ist der Unterschied aber eher nur im
"Network"-Tab des Debuggers sichtbar.

Das kann eigentlich nur ein sehr banales Brett vor meinem Kopf sein,
aber ich komme nicht drauf...

Servus,
   Stefan

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

Stefan - der blödste Aufreisser, den es je geben wird.
(Sloganizer)

Back to de.comp.lang.javascript | Previous | NextPrevious in thread | Next 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