Autor |
Nachricht |
lugus
Threadersteller
Dabei seit: 29.06.2004
Ort: -
Alter: 44
Geschlecht:
|
Verfasst So 16.05.2010 16:16
Titel Javascriptabfrage KFZ Kennzeichen? |
|
|
Hallo zusammen,
ich muss ein Formular erstellen in dem man an eine Versicherungsagentur eine Vorabrechnung einer KFZ Versicherung senden kann, dazu muss ich ein Formfeld nach Inhalt abfragen. Im speziellen Fall soll hier ein mögliches Kennzeichen abgefragt werden.
Es kann also nur a-z,a-z,-,a-z,a-z,123456789 eingegeben werden um nachher ein mögliches Kennzeichen zu übermitteln.
Ich habe ewig im internet gesucht und jetzt folgendes Programmiert:
if(document.kfz.AKZ.value./^[A-Z]{1,3}-[A-Z]{1,2} [0-9]{1,4}$/;) {
alert("Bitte Amtliches Kennzeichen eingeben !");
document.kfz.AKZ.focus();
return false;
}
ich habe aber keine Ahnung was das hier ist und functionieren tut es auch nicht. Kann mir das ganze jemand erklähren das ich es verstehe???
Vielen Dank im Vorraus.
|
|
|
|
|
safer-print
Dabei seit: 11.03.2010
Ort: -
Alter: -
Geschlecht:
|
Verfasst So 16.05.2010 20:59
Titel
|
|
|
Du hast schon ganz gut begonnen. Um zu prüfen ob der Wert (value) eines Formularfeldes bestimmte Eigenschaften erfüllt, kannst du 'Reguläre Ausdrücke' verwenden.
Dein Code müsste also wie folgt aussehen:
Code: | function check_AKZ() {
// Erst den regulären Ausruck definieren
var EigenschaftAKZ = /^[A-Z]{1,3}-[A-Z]{1,2} [0-9]{1,4}$/;
// Dann den Ausdruck mit dem Inhalt des Feldes prüfen
if (EigenschaftAKZ.test(document.kfz.AKZ.value)) {
// Eigenschaft trifft zu
// also das Abschicken des Formulars ermöglichen
return true;
} else {
//Eigenschaft trifft nicht zu,
// also den Benutzer darauf hinweisen
alert("Bitte Amtliches Kennzeichen eingeben !");
// Dem Feld den Focus geben, damit der Benutzer den Fehler korrigieren kann
document.kfz.AKZ.focus();
// Das Abschicken des Formulars verhindern
return false;
}
} |
Beim entsprechenden Formular dann noch ergänzen:
Code: | <form name="kfz" ...><input type="text" name="AKZ" ...>
<input type="submit" value="Absenden" onclick="return check_AKZ()"/></form>
|
Zuletzt bearbeitet von safer-print am So 16.05.2010 21:00, insgesamt 1-mal bearbeitet
|
|
|
|
|
Anzeige
|
|
|
lugus
Threadersteller
Dabei seit: 29.06.2004
Ort: -
Alter: 44
Geschlecht:
|
Verfasst Mo 17.05.2010 19:59
Titel
|
|
|
Hallo safer-print,
super vielen dank für die schnelle hilfe. Ich habe zwar alles verstanden (dachte ich) aber leider klappt es noch nicht ganz. ich habe einfach als "test" in das Formular eingetragen und weg ist es.
Eigentlich müsste ich aber igendwas mit zb. AC-DC666 erst durchgehenlassen können. Habe ich es falsch erklährt oder ist da noch n haken drin?
Vielen Dank schonmal.....
|
|
|
|
|
Kash
Dabei seit: 07.11.2002
Ort: Schopfheim
Alter: 41
Geschlecht:
|
Verfasst Mo 17.05.2010 20:31
Titel
|
|
|
Zeig doch mal Dein Script. So kann man nur Raten.
|
|
|
|
|
safer-print
Dabei seit: 11.03.2010
Ort: -
Alter: -
Geschlecht:
|
Verfasst Mo 17.05.2010 23:37
Titel
|
|
|
Das geht nicht durch, weil ein Leerzeichen zwischen den Buchstaben und den Zahlen gefordert wird. Jedenfalls, wenn du folgenden RegEx einsetzt:
Code: | ^[A-Z]{1,3}-[A-Z]{1,2} [0-9]{1,4}$ |
Wenn es mit oder ohne Leerzeichen funktionieren soll kannst du das Leerzeichen einfach mit einem nachgestellten Fragezeichen optional machen:
Code: | ^[A-Z]{1,3}-[A-Z]{1,2} ?[0-9]{1,4}$ |
|
|
|
|
|
lugus
Threadersteller
Dabei seit: 29.06.2004
Ort: -
Alter: 44
Geschlecht:
|
Verfasst Fr 04.06.2010 11:37
Titel
|
|
|
mhhhh, jaaaa also vielen dank genauso habe ich es auch ausprobiert, aber leider fragt das Script dieses Feld jetzt gar nicht mehr ab.....ratlosigkeit macht sich breit.
ich poste mal das Script:
function check_AKZ() {
var EigenschaftAKZ = /^[A-Z]{1,3}-[A-Z]{1,2} ?[0-9]{1,4}$/;
if (EigenschaftAKZ.test(document.kfz.AKZ.value)) {
return true;
} else {
alert("Bitte Amtliches Kennzeichen eingeben !");
document.kfz.AKZ.focus();
return false;
}
}
|
|
|
|
|
lugus
Threadersteller
Dabei seit: 29.06.2004
Ort: -
Alter: 44
Geschlecht:
|
Verfasst Fr 04.06.2010 11:39
Titel
|
|
|
vielleicht auch nochmal das script beim absende Button:
<input type="submit" name="Submit" value="Abschicken" onClick="return check_AKZ()">
|
|
|
|
|
safer-print
Dabei seit: 11.03.2010
Ort: -
Alter: -
Geschlecht:
|
Verfasst Fr 04.06.2010 11:48
Titel
|
|
|
Ich hab es gerade noch mal versucht. Folgender Code funktioniert wie du es dir vorstellst:
blabla -> Fehler
AC-DC666 -> Fehler
AC-DC 666 -> Formular wird abgeschickt
AC-DC666[ ] -> Fehler weil Leerzeichen dahinter.
Code: | <html>
<head>
<script type="text/javascript">
<!--
function check_AKZ() {
var EigenschaftAKZ = /^[A-Z]{1,3}-[A-Z]{1,2} [0-9]{1,4}$/;
if (EigenschaftAKZ.test(document.kfz.AKZ.value)) {
return true;
} else {
alert("Bitte Amtliches Kennzeichen eingeben!");
document.kfz.AKZ.focus();
return false;
}
}
//-->
</script>
</head>
<body>
<form name="kfz"><input type="text" name="AKZ">
<input type="submit" value="Absenden" onclick="return check_AKZ()"/>
</form>
</body>
</html> |
|
|
|
|
|
|
|
|
Ähnliche Themen |
PDF-Formular für Download mit eindeut., fortl. Kennzeichen
Suche dringend Gefahrgut-Kennzeichen als Vektor-Dateien
|
|