peterS.: Zugriff auf dynamisch generierte Felder, Objekte und Arrays

Beitrag lesen

gruss Alex,

ich habe HTML dynamisch mit Javascript generiert.
Ich bin auf ein altbekanntes Problem gestoßen: Zugriff auf
Inhalte von Formularfeldern :-< .
Nun ich las den Artikel
http://forum.de.selfhtml.org/archiv/2001/11/1199/#m7680

wobei Du Dich wahrscheinlich durch die dort aufgezeigten wege
   nur noch tiefer im wald verirrt hast, denn ich glaube zu ver-
   stehen, dass Du nur HTML-code generiert und irgendwo im document
   ausgegeben hast, was noch nochts mit erzeugung von js-objekten
   zur laufzeit zu tun hat;

... Der zweite Ansatz interessierte mich umso mehr, da er die
Möglichkeit bietet, Strings einzusetzen.

»»

Es klappte mit:
alert(document.formAuswahl.Kurs3.value);

wirklich??-----------------------^^^^^

Aber es klappte nicht mit:
alert(['document']['formAuswahl']['Kurs3']['value']);

da Du offenbar innerhalb einer funktion mit den als string
   uebergebenen formular- und element-namen auf deren eigenschaften
   zugreifen moechtest, darfst Du ruhig beim alten schreibstil
   bleiben, der Dir "sagt" worauf Du zugreifst und den von Dir
   gewuenschten komfort bietet:

var radioGroup = document.forms["formAuswahl"].elements["Kurs"+i];
// [i] entspricht dabei Deinem schleifenparameter
   for (var k=0;k<radioGroup.length;k++) {
       if (radioGroup[k].checked) {
           alert(radioGroup[k].value;
           break;
       }
   }

Nun "Kurs3" ist der dynamisch generierte Name, wobei "Kurs" fest
ist und "3" durch eine Schleife entsteht. Und da es sich
Radiobuttons handelt, muss der Name für die Gruppenzugehörigkeit
eindeutig sein.

womit alle Deine bedingungen erfuellt waeren;

by(t)e by(t)e - peterS. - pseliger@gmx.net