Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
Nur bestimmte Zeichen in Formular ... [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
ebiz-webhosting
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Nur bestimmte Zeichen in Formular ...


 
F4llen4ngel
15-04-2004, 10:15 
 
Cheers!

Mal wieder eine Frage zur Überprüfung von Formulareingaben ...

Ich möchte gerne das der User die Möglichkeit hat in einem Textfeld Zahlen, Punkt und Doppelpunkt eingeben kann. Wobei nicht alles enthalten sein muss!!!

Wär schön wenn mir jemand verraten könnte wie ich das realisieren könnt!

Schönen Dank und Gruß F4llen4ngel

 
asp2php
15-04-2004, 10:22 
 
du kannst onKeyup-Event das eingegebene Zeichen prüfen, entweder
mit RegEx oder stinknormaler ASCII-Code Überprüfung.

 
F4llen4ngel
15-04-2004, 11:17 
 
hmm ich hatte mehr an soetwas gedacht:


var chkZ = 1;
for(i=0;i<document.Formular.von.value.length;++i)
if(document.Formular.von.value.charAt(i) < "0" || document.Formular.von.value.charAt(i) > "9")
chkZ = -1;

if(chkZ == 1 && document.Formular.von.value.charAt(i) == ":")
chkz = 1;

if(chkZ == -1) {
alert("Bitte nur Zahlen und Doppelpunkt verwenden!");
document.Formular.von.focus();
return false;
}
}

das Problem dabei ist nur wenn der user den Doppelpunkt eingibt wird die 2te IF Abfrage natürlich übergangen ... und genau da liegt mein Problem :(

 
asp2php
15-04-2004, 12:00 
 
mit && und richtigen Verwendung der () kannst du die Abfrage nach : auch in die
1. Bedingung reinpacken, somit entfällt auch chkZ ;)

 
Innuendo
15-04-2004, 12:08 
 
Oder:


if(!document.Formular.elements['formularfeld'].value.match(/^[0-9:\.]$/))
{
alert("Ihre Angabe darf nur Ziffern, den Doppelpunkt und den Punkt enthalten.");
}

 
F4llen4ngel
15-04-2004, 12:16 
 
ich hätte auch einfach noch die geschweiften Klammern zur FOR Schleife hinzufügen können :goth:

- -

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:50 Uhr.