dedlfix: required setzten

Beitrag lesen

problematische Seite

Tach!

Warum kann man statt

document.querySelector("fieldset").addEventListener('click', function ()
{
	requiredOnRequestElements.setRequired();
});

nicht einfach

document.querySelector("fieldset").addEventListener('click', requiredOnRequestElements.setRequired);

schreiben?

Na ganz einfach, dann funktioniert es nicht. ;) Muss reichen als Antwort, als Frage reicht es ja auch …. Nicht.

Beim Aufruf wird der Objektkontext ignoriert. Die Methode wird direkt aufgerufen, aber nicht als Funktion des Objekts requiredOnRequestElements, sondern statisch oder sowas in der Art. Man sieht das im Debugger, wenn man einen Breakpoint auf die Zeile mit dem for setzt. Das this ist im ersten Fall die NodeList, auf die requiredOnRequestElements verweist. In der nicht funktionierenden Variante zeigt es auf das fieldset. Der Eventhandler wurde aufgerufen und das this wurde dabei auf das Element gesetzt, an dem der Eventhandler hängt. Damit wird nun die Funktion setRequired() aufgerufen. Die anonyme Funktion bewirkt, dass das Objekt requiredOnRequestElements genommen wird, und dessen Methoden werden dann mit this auf das Objekt zeigend ausgeführt.

dedlfix.

0 55

required setzten

André
  • html
  1. 0
    Google weiß alles
    1. 2
      Gunnar Bittersmann
      • javascript
      1. 0
        Matthias Apsel
      2. 1
        dedlfix
      3. 0
        Google weiß alles
        • javascript
        • meinung
        1. 0
          Der Martin
      4. 1
        Orlok
        • dom
        • javascript
        1. 0
          Gunnar Bittersmann
          • javascript
    2. 0

      Geht auch mit viel weniger Code!

      André
      • javascript
      • jquery
      1. 0

        "Weniger" ist manchmal "mehr", manchmal "viel mehr", machmal "viel zu viel"

        Google weiß alles
        1. 0
          André
          1. 0
            Google weiß alles
            1. 0
              André
              1. 0
                Google weiß alles
                • menschelei
          2. 3

            jQuery

            Orlok
            1. 0
              Mitleser
      2. 0
        Wie krass bist Du denn drauf?
        1. 0
          Der Martin
      3. 0
        Gunnar Bittersmann
        1. 0
          André
          1. 1
            Wie krass bist Du denn drauf?
            1. 0
              André
              1. 0
                Wie krass bist Du denn drauf?
                1. 0
                  André
                  1. 0
                    Wie krass bist Du denn drauf?
                    • menschelei
                    1. 0
                      André
                      1. 1
                        Wie krass bist Du denn drauf?
                        1. 0

                          Tut mir leid, war falsch.

                          Wie krass bin ich denn heute drauf?
  2. 0
    André
    1. 0
      Google weiß alles
      • barrierefreiheit
      1. 0
        André
        • html
        1. 1
          Google weiß alles
          1. 0
            André
            1. 1
              Google weiß alles
            2. 0
              Gunnar Bittersmann
        2. 0
          Der Martin
          • html
          • zu diesem forum
          1. 0
            André
            1. 0
              Der Martin
              1. 1
                Google weiß alles
            2. 2
              Google weiß alles
              1. 0
                André
                1. 0
                  Tabellenkalk
                  1. 0
                    André
                    1. 0
                      Der Martin
                    2. 0
                      Tabellenkalk
                      1. 0
                        André
                        1. 0
                          Tabellenkalk
                          1. 0
                            Gunnar Bittersmann
                            1. 0
                              Tabellenkalk
                            2. 0
                              Matthias Apsel
                2. 0
                  Google weiß alles
                  • menschelei
                  1. 0
                    André
                    1. 0
                      Google weiß alles
    2. 0
      Gunnar Bittersmann
      • zu diesem forum