formular array prüfen

luchs3

Erfahrenes Mitglied
Hi,

Ich weiss, dass das Thema formular überprüfen schon ziemlich strapaziert ist.
Aber nach langer, erfolgloser Suche schreibe ich jetzt trotzdem.

Ich habe ein Formular dessen Texteingaben in einem asoziativen Array gespeichert werden.
Wie kann ich die einzelnen Elemente auf vollständigkeit überprüfen?

HTML:
<script type='text/javascript'>
        
function pruefen() { 
    var f = document.forms[0]; 
    var fehler = false;
            
    if (f.elements[0].value == '') {
        fehler = 'Benutzername ';
    }
    if (fehler) { 
          alert ('Die folgenden Felder wurden nicht ausgeführt: ' + fehler); 
          return false; 
     } 
     else return true; 
} 
</script> 

<form  onsubmit="return pruefen();">
<input type="text" name="test[vorname]">
<input type="text" name="test[nachname]">
<input type="submit">
</form>
Damit kann ich nur das erste Feld auslesen.
Ich würde aber gerne gezielter auf das Array zugreifen.

in etwa so:
HTML:
...
if (f.test[vorname].value == '') {
    ...
thx Niko
 
Javascript:
var f = document.forms[0];
for(i=0; obj = f.elements[i]; ++i) {
    if( obj.value == "" && obj.type == "text" )
        return false;
}
return true;
 
Zuletzt bearbeitet:
Das ist ja schön und gut, aber wenn ich 20 verschiedene Eingabefelder habe, bei denen einige verschiedene Kriterien erfüllen müssen bringt mir das auch nichts.

Gibt es unter JS nicht eine Möglichkeit ein Arrayfeld über dessen zugewiesenen Namen anzusprechen?
 
Mir ist irgentwie nicht ganz klar, was du eigentlich willst. Sowas vielleicht?
Javascript:
f.elements["test[vorname]"];
docuemnt.getElementsByName("test[vorname]")[0];
Für Javascript ist das ganze kein Array mit namen "test", das aus verschiedenen input-Feldern als Elemente besteht, sondern es sind lauter input-Felder die einfach ein Attrubt "name" mit den Werten "test[vorname]", "test[nachname]" haben.

Und auch wenn du Wiener bist, kannst du ein wenig freundlichkeit in deine Beiträge legen, denn du willst etwas von uns.
 
Zuletzt bearbeitet:
Das wars, danke:)
Hatte wohl alle anderen Möglichkeiten mit Hochkomma ausprobiert mit denen es nicht funktioniert hat

War nicht meine Absicht, unfreundlich zu wirken.
Ich weiss zwar nicht, was das mit Wien zu tun hat, aber ok :confused:.

Gruß Niko
 
Nichts für ungut, hatte nur ein bisschen Anstoß daran genommen:
Das ist ja schön und gut, aber wenn ich 20 verschiedene Eingabefelder habe, bei denen einige verschiedene Kriterien erfüllen müssen bringt mir das auch nichts.
Das mutete mir ein wenig polemisch an, war aber sicher nicht so gemeint. Verzeih mir, bin auf sowas doch etwas algerisch ;).

Und Wien ist natürlich eine schöne Stadt aber besonders was Ober im Kaffeehaus angeht, gibt es da ein paar grimmige Zeitgenossen...:rolleyes:
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück