Nur Zahlen in Formulareingabe zulassen
Kai
- html
Hallo! Wie kann ich nur ganze Zahlen bei der Eingabe in Formularen zulassen? Ich habe ein kleines Formular erstellt, in dem man die Anzahl eines Produktes eingeben soll. Ich möchte aber verhindern, dass man "1,2 Bananen" oder "xyz Bananen" eingibt, sondern immer nur ganze Zahlen.
Wäre Euch wirklich dankbar!
Kai
Lieber Kai,
dazu brauchst Du eine Programmiersprache (genauer "Scriptsprache"), die entweder im Browser schon vor dem Versenden prüft (z.B. Javascript, 2. Wahl), oder aber auf dem Server die Eingaben auswertet und, sich entsprechend beschwert (z.B. PHP, ASP, PERL etc., 1. Wahl).
Liebe Grüße aus Ellwangen,
Felix Riesterer.
你好 Felix,
Lieber Kai,
dazu brauchst Du eine Programmiersprache (genauer "Scriptsprache"), die
entweder im Browser schon vor dem Versenden prüft (z.B. Javascript, 2.
Wahl), oder aber auf dem Server die Eingaben auswertet und, sich
entsprechend beschwert (z.B. PHP, ASP, PERL etc., 1. Wahl).
Nein, es ist nicht zwingend eine Scriptsprache erforderlich. CGI geht auch
mit allen anderen Sprachen, die eine Standard-Ein- und -Ausgabe habe.
再见,
CK
Hallo Kai,
Hallo! Wie kann ich nur ganze Zahlen bei der Eingabe in Formularen zulassen? Ich habe ein kleines Formular erstellt, in dem man die Anzahl eines Produktes eingeben soll. Ich möchte aber verhindern, dass man "1,2 Bananen" oder "xyz Bananen" eingibt, sondern immer nur ganze Zahlen.
Z.B. mit JS:
Du prüfst ob der eingegebene Wert durch 1 restlos teilbar ist:
Ist es eine Bruchzahl oder gar keine Zahl, liefert die Funktion den Rückgabewert "false".
<html>
<head>
<title>zahlen?</title>
<script language="JavaScript">
<!--
function prf () {
if(form1.eing.value%1 != 0) {
alert("keine ganze Zahl!");
return false;
}
}
//-->
</script>
</head>
<body>
<form name="form1" action="" method="" onSubmit="prf()" target="">
<input type="Text" name="eing" value="" size="" maxlength="">
<input type="Submit" name="" value="">
</form>
</body>
</html>
Gruß Gernot
Vielen Dank Euch allen. Diese einfach JavaScript-Lösung ist für meine Zwecke ideal. Natürlich sollte man zusätzlich auch serverseitig prüfen, bei meiner Anwendung aber reicht die "brauser"seitige Prüfung. Ich bin sowieso der Auffassung, dass alles serverseitige, das auch der Browser übernehmen kann, zusätzlich auch vom Browser abgefangen werden sollte. Dies ist gerade bei hoher Serverbelastung eine gewisse Verlagerung der Rechenkapazitäten auf den Anwender, dem es meist weniger wehtut als dem Server, der ja ggf. mit Tausenden von Anfragen dieser Art zu rechnen hat.
Hallo Kai,
Vielen Dank Euch allen. Diese einfach JavaScript-Lösung ist für meine Zwecke ideal.
Ich muss da noch mal was korrigieren:
Schreib "document." vor das form1.eing.value, sonst gibt es in Mozilla und Co Probleme.
Und natürlich braucht das <script>-Anfangstag auch ein Attribut type="text/javascript".
<script type="text/javascript" language="JavaScript">
<!--
function prf () {
var zahl = document.form1.eing.value;
if(zahl%1 != 0) {
alert("keine ganze Zahl!");
return false;
}
return true;
}
//-->
</script>
Gruß Gernot
Hallo, Kai,
Wie kann ich nur ganze Zahlen bei der Eingabe in Formularen zulassen?
wenn Du das schon bei der Eingabe und nicht erst beim Absenden checken willst, mußt Du überprüfen, welcher key beim Focus auf das jeweilige Feld gedrückt wurde. Dann hilft Dir dieses Tutorial vielleicht weiter ...
Allowing Only Numbers (or Letters) in a Text Box
Grüße,
Sebastian