Feldwert auf Zahlen prüfen
Stephanie
- javascript
0 Dennis0 Jörg Peschke0 Dennis0 Jörg Peschke0 Dennis
hallo zusammen
habe eine funktion welche prüft ob ein feld zahlen und evt. ein punkt enthält.
Das Script sieht folgender massen aus.
function checknumber(){
var Fehler = 0;
var x=document.forms[0].Offer.value
var anum= /(^\d+$)|(^\d+.\d+$)/
if (anum.test(x))
window.document.forms[0].submit()
else{
alert("Bitte geben Sie eine gültige Zahl ein1!")
window.document.forms[0].Offer.focus();
return;
}
}
Nun sollte der Benutzer auch folgende Zahl eingeben können zb. 1'500.00.
Hatt jemand einen Tipp wie ich meine Funktion ausbauen kann.
Bin für jede Hilfe dankbar.
Gruss
Stéphanie
Hi Stephanie,
var anum= /(^\d+$)|(^\d+.\d+$)/
Nun sollte der Benutzer auch folgende Zahl eingeben können zb. 1'500.00.
Du musst den RegEx oben einfach anpassen. Vermutlich wäre eine Zeichenklasse das Beste, wie das geht steht hier: http://de.selfhtml.org/javascript/objekte/regexp.htm.
Beachte aber, dass 124,58 sowie 1.345.000,98 und 1,234.30 auch durchaus gebräuchliche Schreibweisen sind.
MfG, Dennis.
var anum= /(^\d+$)|(^\d+.\d+$)/
Kenn mich mit JavaScript-RegExps nicht so gut aus, aber in Perl ginge es vermutlich so:
var anum = /(^\d+('\d+)?(.\d+)?$)/
"Am Anfang(^) stehen Zahlen(\d+). Dann kann ein ' mit weiteren Zahlen kommen ('\d+), muss aber nicht(?). Danach kann ein . mit weiteren Zahlen kommen(.\d+), muss aber nicht(?). Dann ist ende($)."
Könnte so klappen.
Gruesse,
Joerg
Hi Jörg,
var anum= /(^\d+$)|(^\d+.\d+$)/
Kenn mich mit JavaScript-RegExps nicht so gut aus, aber in Perl ginge es vermutlich so:
var anum = /(^\d+('\d+)?(.\d+)?$)/"Am Anfang(^) stehen Zahlen(\d+). Dann kann ein ' mit weiteren Zahlen kommen ('\d+), muss aber nicht(?). Danach kann ein . mit weiteren Zahlen kommen(.\d+), muss aber nicht(?). Dann ist ende($)."
Vielleicht wäre statt dem ersten ? ein * besser, denn ich möchte ja auch 1'000'000 schreiben können.
MfG, Dennis.
Vielleicht wäre statt dem ersten ? ein * besser, denn ich möchte ja auch 1'000'000 schreiben können.
Solche Zahlen kann ich mir nicht mehr vorstellen, ich kann nur 0 und 1 *g*
Aber stimmt, du hast recht :)
Gruesse,
Joerg
Hi Jörg,
Solche Zahlen kann ich mir nicht mehr vorstellen, ich kann nur 0 und 1 *g*
Immer diese Computerfanatiker ;-)
Aber stimmt, du hast recht :)
Das wird wohl langsam zur Gewohnheit :-P
MfG, Dennis.