Javascript Formular überprüfen: sendet trotzdem
gamefrog
- javascript
0 Cheatah0 Patrick Andrieu1 Tom
Hallo
Ich habe mit folgendes Formular mit javascript überprüfen lassen.
Wenn ich das leere Formular sende, dann kommt (wie gewünscht) die Meldung, ich solle den Namen angeben und das Namensfeld wird fokussiert.
Wenn ich dann aber einen Namen eintrage (den Rest aber leer lasse), kommt die Meldung (wie gewünscht), es fehle die Mailadresse. Nach bestätigen der Fehlermeldung wird das Formular aber trotzdem gesendet, was ja nicht viel Sinn ergibt.
Hoffe, mir kann jemand helfen ;-)
Vielen Dank schonmal
CODE:
<head>
<script type="text/javascript">
function chkFormular() {
if (document.contact.Name.value == "") {
alert("Bitte Name eingeben");
document.contact.Name.focus();
return false;
}
if (document.contact.Mail.value == "") {
alert("Bitte Mailadresse eingeben");
document.contaact.Mail.focus();
return false;
}
if (document.contact.Mail.value.indexOf("@") == -1) {
alert("Bitte g¨tige Mailadresse eingeben");
document.contaact.Mail.focus();
return false;
}
if (document.contact.Mail.value.indexOf(".") == -1) {
alert("Bitte g¨tige Mailadresse eingeben");
document.contaact.Mail.focus();
return false;
}
if (document.contact.Betreff.value == "") {
alert("Bitte Betreff eingeben");
document.contact.Betreff.focus();
return false;
}
if (document.contact.Nachricht.value == "") {
alert("Bitte Nachricht eingeben");
document.contact.Nachricht.focus();
return false;
}
}
</script>
</head>
<body>
<form name='contact' method='post' action='?section=contact&action=send' onsubmit='return chkFormular();'>
<div class='news_titel'>Kontakt</div>
<div class='news_inhalt'>Wähle bitte zuerst die Kontakt-Art und fülle dann alle Felder, die mit einem * gekennzeichnet sind, aus.</div>
<br /><br />
<div class='kontakt_zeile'>
<select class='kontakt_feld' style='width:150px; margin-left:75px;' name='empfaenger'>
<option value='feedback'>Feedback</option>
<option value='error'>Fehler melden</option>
</select>
</div>
<div class='kontakt_zeile'>
<div class='kontakt_links'>Name*</div>
<input name='Name' type='text' class='kontakt_feld'/>
</div>
<div class='kontakt_zeile'>
<div class='kontakt_links'>Adresse</div>
<input name='Adresse' type='text' class='kontakt_feld'/>
</div>
<div class='kontakt_zeile'>
<div class='kontakt_links'>Telefon</div>
<input name='Telefon' type='text' class='kontakt_feld'/>
</div>
<div class='kontakt_zeile'>
<div class='kontakt_links'>Mail*</div>
<input name='Mail' type='text' class='kontakt_feld'/>
</div>
<div class='kontakt_zeile'>
<div class='kontakt_links'>Betreff*</div>
<input name='Betreff' type='text' class='kontakt_feld'/>
</div>
<div class='kontakt_zeile'>
<div class='kontakt_links'>Nachricht*</div>
<textarea name='Nachricht' id='kontakt'></textarea>
</div>
<div class='kontakt_zeile'>
<div class='kontakt_submit'>
<input type='submit' value='Senden' />
<input type='reset' value='Zurücksetzen' />
</div>
</div>
</form>
</body>
Hi,
Wenn ich dann aber einen Namen eintrage (den Rest aber leer lasse), kommt die Meldung (wie gewünscht), es fehle die Mailadresse. Nach bestätigen der Fehlermeldung wird das Formular aber trotzdem gesendet, was ja nicht viel Sinn ergibt.
und die Fehlermeldung, die Dir der Browser nennt, lautet wie?
Cheatah
er sagt: "Bitte Mailadresse eingeben"
(so wie es im script steh:
if (document.contact.Mail.value == "" ) {
alert("Bitte Mailadresse eingeben");
document.contaact.Mail.focus();
return false;
)
Hallo gamefrog!
er sagt: "Bitte Mailadresse eingeben"
Das wird durch den JavaScript-Alert ausgegeben, ist keine Fehlermeldung des Browsers, und Cheatah braucht doch keine Brille, weil ich erst jezt verstanden, wie er das meint ;)
Viele Grüße aus Frankfurt/Main,
Patrick
Hi,
[...] Cheatah braucht doch keine Brille, weil ich erst jezt verstanden, wie er das meint ;)
Schoen, dass mir das immer mal wieder gelingt. [dsf 4.29]
Cheatah ;-)
Hallo,
...., ist keine Fehlermeldung des Browsers, und Cheatah braucht doch keine Brille, weil ich erst jezt verstanden, wie er das meint ;)
... wahrscheinlich hat der TO noch nicht verstanden, was Cheatah unter einem Browser und einer Fehlerkonsole versteht ...
SCNR Gruß plan_B
Hi,
und Cheatah braucht doch keine Brille,
Und auch keine conta(a)ct-Linsen.
cu,
Andreas
Hallo gamefrog!
if (document.contact.Mail.value == "") {
alert("Bitte Mailadresse eingeben");
document.contaact.Mail.focus();
^^
Dein Formular heißt »contact« und Cheatah braucht eine Brille!
Viele Grüße aus Frankfurt/Main,
Patrick
haha!
vielen dank! ich hab mir noch gedacht, dass es an nem schreibfehler liegt :D
unglaublich, wenn man es selbst geschrieben hat, dann merkt man das net^^
THX
Hallo gamefrog!
unglaublich, wenn man es selbst geschrieben hat, dann merkt man das net^^
Dann brauchst _Du_ die Brille ;) Spaß beiseite, manchmal sind vergessene Hochkommata oder andere Kleinigkeiten dieser Art, welche für die längsten Fehlersuch-Aktionen verantwortlich sind ;)
Dennoch solltest Du immer erst die Fehlerkonsole (Firefox) befragen!
Viele Grüße aus Frankfurt/Main,
Patrick
Hello,
<script type="text/javascript">
function chkFormular(tocheck) {
if (tocheck.Name.value == "") {
alert("Bitte Name eingeben");
tocheck.Name.focus();
return false;
}
...
<form name='contact' method='post' action='?section=contact&action=send' onsubmit='return chkFormular(this);'>
Dann hätte der Schreibfehler gar keine Chance gehabt.
Ein harzliches Glückauf
Tom vom Berg
http://bergpost.annerschbarrich.de
.