Validierung eines Formulareldes

phpameise

Mitglied
Mein Problem: Ich lasse Formularfelder nach Betätigung des Sende-Buttons überprüfen. Es gibt da ein Feld "Vorwahl". Ich möchte dort nur Ziffern und Klammern "(" oder ")" zulassen.
Bisher habe ich:
Code:
  if (document.myform.Vorwahl.value.length > 0){
   var Wert = document.myform.Vorwahl.value, chkZ = 1;
   for (i=0;i<Wert.length;++i)
    if (Wert.charAt(i) < "0" || Wert.charAt(i) > "9") chkZ = -1;
    if (chkZ == -1) {
	alert("Geben Sie eine korrekte Zahl ohne Leer- und Sonderzeichen ein!");
    return false;}
Hier werden nur Ziffern zugelassen. Wie erlaube ich zusätzlich die beiden Klammer-Zeichen? Danke.
 
Javascript:
for (i=0;i<Wert.length;++i)
    if ((Wert.charAt(i) < "0" || Wert.charAt(i) > "9") && Wert.charAt(i) != "(" && Wert.charAt(i) != ")")
        chkZ = -1;

Gruß
 
Geht so leider nicht. Fehlermeldung, wenn Klammer zB. (0)172.
Hier nochmal mein original Code. Mein var heißt Wert3:
Code:
if (document.myform.Vorwahl.value.length > 0){
   var Wert3 = document.myform.Vorwahl.value, chkZ = 1;
   for (i=0;i<Wert3.length;++i)
    if ((Wert3.charAt(i) < "0" || Wert3.charAt(i) > "9") && Wert3.charAt(i) != "(" && Wert3.charAt(i) != ")") chkZ = -1;
    if (chkZ == -1) {
	 alert("Geben Sie eine korrekte Zahl ohne Leer- und Sonderzeichen ein!"); 
    return false;}
  }
 
Es lag an mir. Ich habe einfach das Falsche Feld validiert. Also ganz klar, dein Code ist perfekt.
Code:
for (i=0;i<Wert.length;++i)
    if ((Wert.charAt(i) < "0" || Wert.charAt(i) > "9") && Wert.charAt(i) != "(" && Wert.charAt(i) != ")")
        chkZ = -1;
Sorry! Aber Danke
 

Neue Beiträge

Zurück