Welcher Button wurde geklickt
bearbeitet von OrlokHallo beatovich
> Da magst du recht haben im konkreten Fall. Im praktischen Fall wird man aber ein bestimmtes Formular nicht anhand eines form indexes suchen. Das wäre sehr unzuverlässig.
Muss man ja auch nicht.
~~~HTML
<form id="name">
~~~
Wenn du dem Form eine ID gibst, kannst du es in der von `document.forms`{: .language-javascript} zurückgegebenen HTMLCollection auch darüber ansprechen:
~~~JavaScript
const form = document.forms.name;
~~~
Wenn die ID Zeichen enthält, die in Eigenschaftsnamen nicht erlaubt sind, kannst du die Klammernotation verwenden:
~~~JavaScript
const form = document.forms['namespace-name'];
~~~
Die beiden Varianten mit Index oder ID auf das `form` zuzugreifen korrespondieren mit den beiden Methoden `item` und `namedItem` der HTMLCollection-Schnittstelle. Du könntest also auch schreiben:
~~~JavaScript
const form = document.forms.namedItem('name');
~~~
Wäre aber unnötig umständlich.
Nebenbei bemerkt ist `document.forms`{: .language-javascript} nicht die einzige nützliche Sammlung von Elementen.
Unter anderem gibt es noch:
- `document.scripts`{: .language-javascript} gibt eine Sammlung der Skriptelemente.
- `document.images`{: .language-javascript} gibt eine Sammlung der Bilder.
- `document.links`{: .language-javascript} sammelt `a` und `area`-Elemente mit `href`-Attribut.
Siehe auch [3.1.1 The `document` Object](https://www.w3.org/TR/html53/dom.html#the-document-object).
Viele Grüße,
Orlok