Jan Pilarzeck: mehrere Formulare in einer Datei dynamisch ansprechen

Hallo!

Ich habe in einer HTML-Datei mehrere Formulare, die unterschiedliche Namen haben. In den Formularen sind eigentlich die gleichen Felder mit den gleichen Namen. In jedem Formular ist ein Button bzw. Link, der bei Klick den Wert eines Feldes in dem jeweiligen Formular ändert.

Beispiel: bei Klick auf Button in dem Formular mit dem Namen "formular2" soll das Feld "irgendwas" in diesem Formular einen anderen Wert bekommen.

Mein folgender Lösungsansatz funktioniert nicht:

Funktionsaufruf: meineFunktion('Formularname')

die Funktion selbst:

function meineFunktion(Formularname) {
   document.Formularname.irgendwas.value='neuer Wert';
}

Leider setzt sowohl der IE als auch der NN nicht den Wert der Variablen "Formularname" ein, sondern sucht ein Formular mit dem Namen "Formularname" - und da das ja nicht existiert, kommt die Fehlermeldung "...ist Null oder kein Objekt..."!

Wie bekomme ich den Browser dazu den Inhalt der Variablen einzusetzen? Ist der Ansatz überhaupt richtig?

Wichtig ist, dass die Lösung auch mit den Browsern der 4. Generation funktioniert!!!

Danke schonmal, Jan!

  1. Hi,

    Mein folgender Lösungsansatz funktioniert nicht:

    Funktionsaufruf: meineFunktion('Formularname')

    die Funktion selbst:

    function meineFunktion(Formularname) {
       document.Formularname.irgendwas.value='neuer Wert';
    }

    bevor ichs dir erkläre lies es hier nach.

    http://selfhtml.teamone.de/javascript/objekte/forms.htm#allgemeines

    d.h.
    function meineFunktion(Formularname) {
        document.forms[Formularname].irgendwas.value='neuer Wert';
    }

    bye eddie

  2. Hi

    document.Formularname.irgendwas.value='neuer Wert';

    Es muß document[Formularname].blabla heißen.

    Ciao,

    Harry