Hallo Anton,
Nein, ich muss doch durch die Arrayelemente loopen.
Das Problem ist nur, dass Du aus Javascript-Sicht gar kein Array hast (zumindest nicht so, wie Du dir das vorstellst), sondern der Name eines Formularelements ist ein ganz normaler String.
Jetzt hast Du zwei Möglichkeiten:
1. Du durchläüfst in einer Schleife _alle_ Formularelemente und prüfst, ob der Name
des aktuellen Elements mit "anzahlNeu" beginnt:
for (var i=0; i<aForm.elements.length; i++)
if (aForm.elements[i].name.substring(0, 8) == "anzahlNeu") {
...
}
}
(http://de.selfhtml.org/javascript/objekte/string.htm#substring) oder
2. Du schreibst serverseitig die Anzahl in eine Javascript-Variable
var anz = <?php echo $anzahl ?>;
(Ich weiss nicht genau, ob das so ganz korrekt ist, da ich kein PHP kann, aber
das Prinzip sollte klar sein.)
Dann kannst Du in deiner Funktion eine Schleife machen wie folgt:
for (var i=0; i<anz; i++)
var test = parseInt(aForm.elements['anzahlNeu[' + i + ']'].value);
if (aForm.elements['anzahlNeu[' + i + ']'].value != test) {
alert("Bitte nur Zahlen eingeben !");
return false;
}
return true;
}
So, das ist jetzt nicht getestet, aber so ungefähr sollte es gehen.
Grüße
Andreas
"Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning."
(Rich Cook)