Hi,
ich habe eine Formular mit einigen Textfeldern
<form...>
<input type="text" id="1" value="foo">
<input type="text" id="2" value="bar">
<input type="text" id="3" value="fooBar">
...
</form>
das ist ungültiges HTML, weil ein ID-Wert nicht mit einer Ziffer beginnen darf.
> Jetzt möchte ich mit JavaScript in einer Schleife alle Werte dieser Textfelder hintereinander abfragen.
> Irgendwie stehe ich gerade auf dem Schlauch. Ich mache sonst kaum JavaScript, kann mir mal einer auf die Sprünge helfen?
Wenn die Felder fortlaufend numeriert sind ("i1", "i2", "i3", ...) und deren Anzahl bekannt ist, würde sich eine for-Schleife anbieten, die in jedem Durchlauf mit getElementById() das entsprechende Element sucht.
Aber vielleicht ließe sich das noch viel "schöner" umsetzen. Du könntest mit getElementsByTagName() einmal vor Beginn der Schleife alle input-Elemente innerhalb des Formulars suchen, und dann über das so erhaltene Array iterieren. Dabei in jedem Durchlauf abfragen, ob die type-Eigenschaft den Wert "text" hat, und wenn nicht, das Element übergehen (z.B. Schleifensteuerung mit continue). Das hat zumindest den Vorteil, dass nicht in jedem Schleifendurchlauf das gesamte DOM durchsucht werden muss.
So long,
Martin
--
Wichtig ist, was hinten rauskommt.
(Helmut Kohl, 16 Jahre deutsche Bundesbirne)
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(