Siechfred: Typkonflikt bei Variablen-Übergabe an Funktion (Ergänzung)

Beitrag lesen

"add" ist eine Methode des HTML-Elementobjekts select, also als Funktionsname denkbar ungeeignet, weil bereits vergeben.

Kleine Ergänzung: Wenn du das Objekt, zu dem die Funktion gehört soll, explizit angibst, funktioniert es auch mit add. Folgendes:

<select name="albname" onChange="add()" size="1">

ist zunächst gleichbedeutend mit

<select name="albname" onChange="this.add()" size="1">

wobei sich this auf das aktuelle Objekt, somit also auf das HTML-Elementobjekt "select" bezieht. Sollte das Objekt diese Methode/Eigenschaft nicht kennen, wird auf das nächsthöhere Objekt im DOM-Baum Bezug genommen, das wäre hier das form-Objekt, wenn das die Methode/Eigenschaft nicht kennt, geht's wieder eine Ebene höher usw. usf. bis hinauf zum window-Objekt. Dort findet Javascript u.a. auch die von dir definierten eigenen Funktionen. Schröbst du also:

<select name="albname" onChange="window.add()" size="1">

wäre alles Bestens, da das window-Objekt keine vordefinierte Eigenschaft oder Methode diesen Namens kennt, sondern nur die von dir definierte Funktion mit dem Namen add.

Siechfred

--
Hier könnte Ihre Werbung stehen.
Kabelkuddelmuddel || Steuerfreie Geburtsbeihilfen?  || RT 221 Erfurt-Altstadt i.V.