Hi Struppi,
also ich habe es doch so wie Du vorschlägst. Das versuchte ich doch die ganze Zeit zu erklären.
Nein, in deinem lezten Quellcode war innerhalb deer eckigen Klammern noch eine Zahl aus deinem PHP Skript. Und das macht die Sache unötig kompliziert.
function ZahlChecker() {
var i;
alert ("Test");for (i=0; i<document['artikelsuche']['anzahlNeu[]'].length ; i++) {
if (anzahlNeu[i]< = "0" && anzahlNeu[i]>= "9") {
alert("Bitte nur Zahlen eingeben !");
return false;}
}
}Haut aber immer noch nicht hin. Ich benutze nun den Ausdruck von Dir, wie Du siehst.
Ja, nur deine Formularfelder haben die falschen Namen. Du solltest a.) zum testen von JS Mozilla verwenden ('javascript:' in die URL Zeile eintippen, dann siehst du eine aussagekräftigere Fehlermeldung) und b.) im entwicklungsstadium, die Werte die du verwenden möchtest überprüfen (eigentlich eine selbstverständlichkeit, gerade auch bei CGI Anwendungen)
z.b. so:
function ZahlChecker() {
var i;
alert ("Test");
if(!document['artikelsuche']) return alert('Formular fehlt!');
if(!document['artikelsuche']['anzahlNeu[]']) return alert('Felder fehlen!');
for (i=0; i<document['artikelsuche']['anzahlNeu[]'].length ; i++) {
if (anzahlNeu[i]< = "0" && anzahlNeu[i]>= "9") {
Das ist falsch, was ist denn anzahlNeu, dieses Array hast du nirgens definiert.
Es heißt : document['artikelsuche']['anzahlNeu[]'][i].value
das kannst du aber in deiner Funktion eleganter schreiben:
var anzahlNeu = document['artikelsuche']['anzahlNeu[]']
for(var i = 0; i < anzahlNeu.length;i++)
if( anazhlNeu[i].value < 0 ....)
usw.
Struppi.