Formularprüfung
Kat
- html
0 azok0 CirTap0 Axel Richter0 Kat0 Axel Richter0 Kat
Hallo,
ich habe das Problem, dass ich bei einem Formular gerne prüfen würde ob die E-Mail-Adresse fehlerhaft ist.
Das funktioniert soweit, ich habe mir ein Script runtergeladen. Leider ist dort angegeben, dass man das Prüfen mit Hilfe des Formtyps "Button" machen soll. Klappt eigentlich wunderbar, nur leider wird das Formular dann nur geprüft und nicht versandt. Gebe ich den Aufruf zur Prüfung bei dem Formtyp "Submit" ein, werden die Daten verschickt aber nicht geprüft.
Hier die Zeile:
<input type="submit" value=" Absenden " onClick="validate(document.Antworten.txtemail.value);">
WIe schaffe ich es, dass er gleichzeitig prüft und abschickt?
Vielen Dank für eure Hilfe!!!!!!!!!!
Kat
hi
WIe schaffe ich es, dass er gleichzeitig prüft und abschickt?
das problem ansich verstehe ich... - nur jetzt stell ich mal dir eine frage. angenommen es _wird_ gleichzeitig geprüft und abgeschickt. wenn nun einer eine fehlerhafte email adresse eingegeben hat, wird sie zwar geprüft, aber auch abgeschickt, an eine die möglicherweise gar nicht existiert. - lass dir das nochmal durch den kopf gehen.
p.s. ich würd das ganze überdies serverseitig lösen
lg
azok
Hi,
WIe schaffe ich es, dass er gleichzeitig prüft und abschickt?
Vielen Dank für eure Hilfe!!!!!!!!!!
Wenn Validierung == falsch
dann form.submit = false
Deine validate() funtion sollt entsprechend false|true zurückgeben
onClick="this.form.submit=validate(document.Antworten.txtemail.value);"
Viel Spaß,
CirTap
Hallo,
WIe schaffe ich es, dass er gleichzeitig prüft und abschickt?
Indem Du die Prüfung onsubmit des Formulars startest. Wenn die onsubmit-Funktion true zurückliefert, wird abgesendet, liefert sie false zurück, dann nicht. Siehe: http://de.selfhtml.org/javascript/beispiele/formulareingaben.htm.
viele Grüße
Axel
Hallo,
WIe schaffe ich es, dass er gleichzeitig prüft und abschickt?
Indem Du die Prüfung onsubmit des Formulars startest. Wenn die onsubmit-Funktion true zurückliefert, wird abgesendet, liefert sie false zurück, dann nicht. Siehe: http://de.selfhtml.org/javascript/beispiele/formulareingaben.htm.viele Grüße
Axel
Okay, aber was ist jetzt noch falsch?
<script LANGUAGE =" JavaScript">
<!--
function checkfield(){
var T1 = document.Antworten.txtvorname,
T2 = document.Antworten.txtemail,
if (T1.value == "") {
alert ("Du hast vergessen, deinen Vornamen einzutragen!");
T1.select();
T1.focus();
return false;
}
if (T2.value.indexOf('@') == -1) {
alert ("Deine E-Mail-Adresse stimmt nicht!");
T2.select();
T2.focus();
return false;
}
else {
return true;
}
}
//-->
</SCRIPT>
.....
....
....
<form method="post" action="xxx" name="Antworten" onSubmit="return checkfield()">
<p>Dein Vorname:<br>
<input name="txtvorname" type="text" size="20" maxlength="30">
</p>
<p>Deine E-Mail:<br>
<input name="txtemail" type="text" size="25" maxlength="30">
<p align="left">Nur vollständig ausgefüllte Formulare mit deiner richtigen E-Mail-Adresse können beantwortet werden. </p>
<input type="submit" value=" Absenden ">
<input type="reset" value=" Abbrechen ">
Ich verstehe nicht, was daran falsch ist bzw. warum das nicht klappt. DIe Daten werden immer abgesendet, auch wenn kein Inhalt vorhanden ist.
Viele Grüße
Kat
Hallo,
Okay, aber was ist jetzt noch falsch?
<script LANGUAGE =" JavaScript">
^Doppelfehler: Das Attribut type ist zwingend notwendig. Aber wenn Du schon das Attribut language setzt, dann mit dem Inhalt "JavaScript" und _nicht_ mit " JavaScript".
<script type="text/javascript">
<!--
function checkfield(){
var T1 = document.Antworten.txtvorname,
T2 = document.Antworten.txtemail,
^Fehler: Bezeichner erwartet. Nach dem Komma sollte noch was kommen?
var T1 = document.Antworten.txtvorname,
T2 = document.Antworten.txtemail;
if (T1.value == "") {
alert ("Du hast vergessen, deinen Vornamen einzutragen!");
T1.select();
T1.focus();
return false;
}if (T2.value.indexOf('@') == -1) {
alert ("Deine E-Mail-Adresse stimmt nicht!");
T2.select();
T2.focus();
return false;
}else {
return true;
}
}//-->
</SCRIPT>
<form method="post" action="xxx" name="Antworten" onSubmit="return checkfield()">
<p>Dein Vorname:<br>
<input name="txtvorname" type="text" size="20" maxlength="30">
</p>
<p>Deine E-Mail:<br>
<input name="txtemail" type="text" size="25" maxlength="30">
<p align="left">Nur vollständig ausgefüllte Formulare mit deiner richtigen E-Mail-Adresse können beantwortet werden. </p>
<input type="submit" value=" Absenden ">
<input type="reset" value=" Abbrechen ">Ich verstehe nicht, was daran falsch ist bzw. warum das nicht klappt. DIe Daten werden immer abgesendet, auch wenn kein Inhalt vorhanden ist.
Nein. Dein Code wird erst gar nicht abgearbeitet, weil language=" JavaScript" und type fehlt. Wird das berichtigt, dann wird der Fehler "Bezeichner erwartet" ausgeworfen (siehe oben). Wird dies auch noch berichtigt, dann läuft es so, wie Du wahrscheinlich willst.
viele Grüße
Axel
Hallo Axel,
das sind wirklich blöde Fehle. Aber es läuft jetzt. Danke!
Kat