tobias-digital Geschrieben 7. September 2004 Teilen Geschrieben 7. September 2004 Hi! Bin in Javascript nicht so fit. Ich versuche ein Formular zu validieren, sprich wenn ein Pflichtfeld nicht ausgefüllt ist, soll ne Messagebox, die rummeckert, erscheinen. Hier mal (stark vereinfacht) was ich bis jetzt gemacht hab: Javascript (check.js) function check(theForm) { if(theForm.plz.value.length == 0) { alert("Feld PLZ nicht ausgefüllt"); theForm.plz.focus(); return (false); } if(theForm.ort.value.length == 0) { alert("Feld Ort nicht ausgefüllt"); theForm.ort.focus(); return (false); } } HTML (form.htm) <script type="text/javascript" src="check.js"></script> <form action="suche.htm" method="post" name="suche"> <input type="text" name="plz" /> <input type="text" name="ort" /> <input type="button" name="submit" onclick="return check(this)" /> </form> Jedoch funktioniert es nicht. Die Fehlermeldung lautet immer: "plz.value" ist NULL oder kein Objekt". Soweit ist mir klar was die Fehlermeldung mir sagen will, aber plz ist doch eindeutig da. Würde gerne verstehen woran das liegt. Danke im Vorraus und Gruß Tobias Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kLeiner_HobBes Geschrieben 7. September 2004 Teilen Geschrieben 7. September 2004 dein "theForm" gibt es nicht. Wenn, dann sollte es mit (suche.plz.value == "") versuchen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
tobias-digital Geschrieben 7. September 2004 Autor Teilen Geschrieben 7. September 2004 ich dachte ich übergebe mit bei "check(this)" das aktuelle Formular als Javascript Objekt und "theForm" ist doch der Parameter von "check". Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kills Geschrieben 7. September 2004 Teilen Geschrieben 7. September 2004 es muss so heissen: <script type="text/javascript" src="check.js"></script> <form action="suche.htm" method="post" name="suche"> <input type="text" name="plz" /> <input type="text" name="ort" /> <input type="button" name="submit" onclick="return check(this.form)" /> </form> Wenn du mehere Buttons hast, kannst dus auch so machen: <script type="text/javascript" src="check.js"></script> <form action="suche.htm" method="post" name="suche" onSubmit="return check(this)"> <input type="text" name="plz" /> <input type="text" name="ort" /> <input type="button" name="submit" /> </form> schöner ist es allerdings mit Smarty und SmartyValidate - Serverseitig zu validieren: siehe: http://smarty.php.net Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kLeiner_HobBes Geschrieben 7. September 2004 Teilen Geschrieben 7. September 2004 Sorry, verpeilt. War aber, wie kills festgestellt hat, eh nicht ganz richtig. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
tobias-digital Geschrieben 7. September 2004 Autor Teilen Geschrieben 7. September 2004 Hey! "this.form" funktioniert, vielen Dank kills und kLeiner_HobBes! Gruß Tobias Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
kills Geschrieben 7. September 2004 Teilen Geschrieben 7. September 2004 Hey! "this.form" funktioniert, vielen Dank kills und kLeiner_HobBes! Gruß Tobias bitte bitte. this alleine hat nicht funktioniert, weil wenn du innerhalb eines <input ../> den this zeiger aufrufst, dann bekommst du im JavaScript das Object des Inputs, nicht des Formulars. Aber laut selfHTML kann man bei allen Formularelementen this.form angeben und schon klappts. .... :marine Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.