Johannes Eckert: dynamisches Formular

Habe ein Formular, bei dem abhängig von einer Auswahl sich der Rest des Formulars über createElement... dynamisch erzeugt. Oder anders ausgedrückt: Habe im Formular mehre Drop-Down-Listen. Je nach Auswahl in der Liste werden input-Felder eingefügt. Diese bekommen auch einen Namen.
Nun kann ich aber auf diese nicht über diesen Namen zugreifen, sondern nur über den Index, der sich ja aber je nach Länge des Formulars ändert.
über den Index kann ich mir auch den Namen ausgeben lassen. (document.forms[...].elements[...].name) Dieser stimmt auch mit dem von mir übergebenen ein ???
Wo liegt hier der Fehler???
Können nachträglich eingefügte Fromualfelder nicht mit ihren Namen angesprochen werden???

  1. Ich verstehe ehrlich gesagt deine Frage nicht.

  2. Hallo,

    var ipt = document.createElement("input");
    ipt.setAttribute("name","x_y_z",true);
    document.getElementsByName("formularname")[0].appendChild(ipt) ;

    document.frm.x_y_z = ipt; // <--- der entscheidende Trick!

    das Beispiel ist zwar für ein Input, aber probier es mal aus. Das Problem ist, dass der IE das Name-Attribut zwar setzt, es aber nicht in den DOM-Baum einbindet.

    Gruß, Jürgen