Überprüfung von Formulardaten/Pflichtfelder
Christoph
- javascript
0 Utz0 dbenzhuser0 wahsaga
Hallo,
ich bekomme leider meine Formulardatenüberprüfung per JavaScript nicht zum Laufen.
Meine Frage: Kann das an Konflikten in Verbindung mit anderen JavaScripten und/oder CSS-Spielereien innerhalb der HTML-Datei liegen?
Ich verwende unter anderem noch ein Grafik-Highlighting für Navigations-Buttons (Javascript) sowie Text Decoration per CSS für Nicht-Grafik-Links.
Ich habe nach dem Muster dieser Vorgabe programmiert, die so wie sie ist auch tadellos funktioniert:
http://selfhtml.teamone.de/javascript/beispiele/formulareingaben.htm
Danke + beste Grüße,
Christoph
Hallo,
Meine Frage: Kann das an Konflikten in Verbindung mit anderen JavaScripten und/oder CSS-Spielereien innerhalb der HTML-Datei liegen?
Ja. Bei gleich benannten Variablen/Funktionen/Objekten in verschiedenen Scripten, die auf der selben Seite verwendet werden, kracht es.
Grüße,
Utz
Tach auch.
Zeig am besten mal dein Script, dann lässt sich vielleicht schnell ein Fehler finden. Um konflikte mit anderen Scripten zu erzeugen müsste man sich schon sehr schlau anstellen. Das sollte ausgeschlossen sein.
Tschö,
dbenzhuser
hi,
ich bekomme leider meine Formulardatenüberprüfung per JavaScript nicht zum Laufen.
dürfte nicht so tragisch sein, da du ja sicher eine serverseitige überprüfung auf jeden fall eingebaut hast.
Meine Frage: Kann das an Konflikten in Verbindung mit anderen JavaScripten und/oder CSS-Spielereien innerhalb der HTML-Datei liegen?
meine frage: könntest du bitte "nicht zum laufen kriegen" näher erläutern? welcher code, welche fehlermeldungen (eine _guten_ browser bitte, die fehlermeldungen vom IE sagen idR. recht wenig aus), etc. ...
gruss,
wahsaga
Hallo an alle, die geantwortet haben,
zunächst danke für Eure Beiträge.
Das Problem äußert sich so, dass das Formular ohne Überprüfung der Angaben von meinem CGI-Skript verarbeitet wird, Fehlermeldungen gibt es keine. Das mit dem Code posten ist etwas problematisch, weil es sich um eine kommerzielle Webseite in Arbeit handelt, und der komplette Quelltext würde schon die komplette Architektur und das Design verraten... (Doof, wenn man nicht mit Frames arbeitet ;-))
Ich werde an die Nachricht daher Auszüge aus dem Quelltext anhängen - vielleicht liegt es ja schlicht am chkFormular-Javascript oder der Form.
Danke für's Durchsehen!
Christoph
IM HEAD:
<script type="text/javascript">
function chkFormular() { if(document.Formular.firma.value == "") { alert("Bitte geben Sie Ihren Firmennamen an."); document.Formular.firma.focus(); return false; } if(document.Formular.ansprechpartner.value == "") { alert("Bitte geben Sie einen Apsrechpartner an."); document.Formular.ansprechpartner.focus(); return false; } if(document.Formular.strasse-nr.value == "") { alert("Bitte geben Sie Ihre vollständige Adresse an."); document.Formular.strasse-nr.focus(); return false; } if(document.Formular.plz.value == "") { alert("Bitte geben Sie Ihre vollständige Adresse an."); document.Formular.plz.focus(); return false; } if(document.Formular.ort.value == "") { alert("Bitte geben Sie Ihre vollständige Adresse an."); document.Formular.ort.focus(); return false; } if(document.Formular.land.value == "") { alert("Bitte geben Sie einen Ansprechpartner an."); document.Formular.land.focus(); return false; } if(document.Formular.email.value == "") { alert("Bitte geben Sie Ihre E-Mail-Adresse an."); document.Formular.email.focus(); return false; } if(document.Formular.mail.value.indexOf('@') == -1) { alert("Die eingegebene E-Mail-Adresse ist ungültig."); document.Formular.mail.focus(); return false; } if(document.Formular.nachricht.value == "") { alert("Bitte geben Sie eine Nachricht ein."); document.Formular.nachricht.focus(); return false; } }
</script>
IM BODY:
<form name="buchung" action="http://www.unserfirmenname.de/cgi-bin/mscript.cgi" method="post" onsubmit="return chkFormular()"> <input type="hidden" name="mailto" value="meine.emailadresse@unserfirmenname.de"> <input type="hidden" name="return" value="/www.unserfirmenname.de/danke.html"> <input type="hidden" name="delimiter" value=": "> <input type="hidden" name="subject" value="Nachricht von der Homepage"> <input type="hidden" name="append_file" value="/tmp_samba/xx.csv"> <input type="hidden" name="fdelimiter" value=";">
<table width=450>
<!-- ABFRAGEFELD FIRMA --> <tr> <td width=100 align=right> <font face="Verdana,Arial" size=1> <b>Firma:</b> </font> </td> <td width=350> <input type="text" name="firma" size=36 maxlength=55> </td> </tr> <!-- ABFRAGEFELD NAME --> <tr> <td width=100 align=right> <font face="Verdana,Arial" size=1> <b>Ansprechpartner:</b> </font> </td> <td width=350> <input type="text" name="ansprechpartner" size=36 maxlength=50> </td> </tr> <!-- ABFRAGEFELD STRAßE-NR --> <tr> <td width=100 align=right> <font face="Verdana,Arial" size=1> <b>Straße/Nr.:</b> </font> </td> <td width=350> <input type="text" name="strasse-nr" size=36 maxlength=50> </td> </tr> <!-- ABFRAGEFELD PLZ-ORT --> <tr> <td width=100 align=right> <font face="Verdana,Arial" size=1> <b>PLZ / Ort:</b> </font> </td> <td width=350> <input type="text" name="plz" size=6 maxlength=8> <input type="text" name="ort" size=27 maxlength=50> </td> </tr> <!-- ABFRAGEFELD LAND --> <tr> <td width=100 align=right> <font face="Verdana,Arial" size=1> <b>Land:</b> </font> </td> <td width=350> <input type="text" name="land" size=36 maxlength=50> </td> </tr> <!-- ABFRAGEFELD TELEFON --> <tr> <td width=100 align=right> <font face="Verdana,Arial" size=1> <b>Telefon:</b> </font> </td> <td width=350> <input type="text" name="tel" size=36 maxlength=20> </td> </tr> <!-- ABFRAGEFELD FAX --> <tr> <td width=100 align=right> <font face="Verdana,Arial" size=1> <b>Fax:</b> </font> </td> <td width=350> <input type="text" name="fax" size=36 maxlength=20> </td> </tr> <!-- ABFRAGEFELD E-MAIL --> <tr> <td width=100 align=right> <font face="Verdana,Arial" size=1> <b>E-Mail-Adresse:</b> </font> </td> <td width=350> <input type="text" name="email" size=36 maxlength=50> </td> </tr> <!-- SPACER --> <tr> <td width=100 align=right> </td> <td width=350> <br> </td> </tr> <!-- BETREFF --> <tr> <td width=100 align=right> <font face="Verdana,Arial" size=1> <b>BETREFF:</b> </font> </td> <td width=350> <input type="text" name="betreff" size=36 maxlength=70> </td> </tr> <!-- ANFRAGETEXT --> <tr> <td width=100 align=right> <font face="Verdana,Arial" size=1> <b>IHRE NACHRICHT an uns:</b> </font> </td> <td width=350> <textarea rows="8" cols="32" name="nachricht"></textarea> </td> </tr> <!-- AUSWAHL KONTAKTART --> <tr> <td width=100 align=right> <font face="Verdana,Arial" size=1> <b>Bevorzugte Kontaktart:</b> </font> </td> <td width=350> <font face="Verdana,Arial" size=1> <select name="kontaktart" size="4"> <option selected>via E-Mail</option> <option>telefonisch</option> <option>per Fax</option> <option>per Post</option> </font>
</select>
</td> </tr>
<!-- BUTTONS --> <tr> <td width=100 align=right> </td> <td> <font face="Verdana,Arial" size=1>
<input type="image" src="bilder/absenden.jpg">
</font> </td> </tr>
</table>
</form>
Hallo Christoph,
... ohne Überprüfung der Angaben von meinem CGI-Skript verarbeitet wird ...
Keine gute Idee.
if(document.Formular.firma.value == "") {
alert("Bitte geben Sie Ihren Firmennamen an.");
document.Formular.firma.focus();
return false;
}
[...]
<form name="buchung" action="http://www.unserfirmenname.de/cgi-bin/mscript.cgi" method="post" onsubmit="return chkFormular()">
[...]
Und wo ist das Formular mit Namen "Formular"?
Grüße
Andreas
<form name="buchung" action="http://www.unserfirmenname.de/cgi-bin/mscript.cgi" method="post" onsubmit="return chkFormular()">
[...]Und wo ist das Formular mit Namen "Formular"?
Grüße
Andreas
Andreas hat den Tag gerettet - jetzt funktioniert's, ich danke Dir! Wenn man erst mal nen halben Tag damit rumprobiert und durch ellenlange Quelltexte scrollt, wird man irgendwann wohl einfach blind für solche Sachen. (Bin eben kein Pro...)
Danke noch mal und viele Grüße
Christoph