Telefonabfrage
Horst
- javascript
0 Cheatah0
Gunnar Bittersmann
0 Thomas J.S.
0 Thomas J.S.0 Horst
Ich hab nur eine kleine Frage und zwar funktioniert diese Abfrage irgendwie nicht und ich weiß nicht warum?
if(documet.Formular.telefon.value.match(/[0-9/-]/));
alert("Bitte geben Sie eine gültige Telefonnummer ein. Sie dürfen nur Zahlen von 0-9 und die Sonderzeichen -/ eingeben.")
document.Formular.telefon.focus();
return false;
}
Kann mir jemand dabei helfen.
Hi,
Ich hab nur eine kleine Frage und zwar funktioniert diese Abfrage irgendwie nicht und ich weiß nicht warum?
das ist nur gerecht, denn wir wissen nicht, was "funktioniert nicht" bedeuten mag.
if(documet.Formular.telefon.value.match(/[0-9/-]/));
Von einer Regular Expression kann man den Wert "]/" nicht subtrahieren.
Cheatah
Hi,
if(documet.Formular.telefon.value.match(/[0-9/-]/));
Von einer Regular Expression kann man den Wert "]/" nicht subtrahieren.
Ich weiß, Du haßt mich, aber Du irrst.
Innerhalb der [] beendet das / nicht den Ausdruck.
javascript:alert("xxx".match(/[ab/x]/))
in die Adreßzeile eines Browsers eingegeben zeigt es.
Das Problem von Horst dürfte vielmehr sein, daß der Ausdruck nur ein einzelnes Zeichen an beliebiger Position matcht, nicht den gesamten String.
cu,
Andreas
Hi,
Ich weiß, Du haßt mich, aber Du irrst.
keine Bange, ich hasse Dich nur für Gemeinheiten, nicht für meine Irrtümer ;-)
Innerhalb der [] beendet das / nicht den Ausdruck.
Dann muss ich mir noch mal die Microsoft-Seiten zu Gemüte führen, die auf Geckos regelmäßig Exceptions im Zusammenhang mit einer RegExp schmeißen. Danke.
Cheatah
Hello out there!
if(documet.
Man muss gar nicht bis zum regulären Ausdruck parsen, um einen Fehler zu finden.
Neben deinem JavaScript-Problem hast du noch ein konzeptionelles:
"Bitte geben Sie eine gültige Telefonnummer ein. Sie dürfen nur Zahlen von 0-9 und die Sonderzeichen -/ eingeben."
Warum nicht auch ' ', '(', ')', '+'? [icke, Der Martin]
Außerdem meinst du „Ziffern“, nicht „Zahlen“.
Kann mir jemand dabei helfen.
War das eine Frage.
See ya up the road,
Gunnar
Hallo,
if(documet.
Man muss gar nicht bis zum regulären Ausdruck parsen, um einen Fehler zu finden.
Neben deinem JavaScript-Problem hast du noch ein konzeptionelles:
"Bitte geben Sie eine gültige Telefonnummer ein. Sie dürfen nur Zahlen von 0-9 und die Sonderzeichen -/ eingeben."
Warum nicht auch ' ', '(', ')', '+'?
Es geht jetzt nicht nur gegen dich, sondern generell:
Aber darum geht es mir eigentlich auch nicht wirklich.
Grüße
Thomas
- Was mich jetzt wirklich sauer macht, dass schon drei besch*** Anworten gibt, in der jeder echt nur herumlamentiert.
Kann es sein, dass du etwas überlesen hast?
Wenn man nicht in der Lage ist die RegExp als Antwort auf die Frage zu schreiben, soll man echt und verflixtnochmal die Klappe halten!
Der Fehler liegt nicht in der RegExp sondern ist - um deine Wortwahl zu verwenden - ein besch.... Tippfehler, der mit einer kurzen Kontrolle der JS Konsole gefunde wäre.
Der Rest sind Zusatzinfos für den Frager ob er sie verwendet oder nicht....
Struppi.
Hi,
- Was mich jetzt wirklich sauer macht, dass schon drei besch*** Anworten gibt, in der jeder echt nur herumlamentiert.
Wenn man nicht in der Lage ist die RegExp als Antwort auf die Frage zu schreiben, soll man echt und verflixtnochmal die Klappe halten!
Ratschläge, an die sich der Ratschlagende selbst nicht hält [1], werden nicht wirklich ernstgenommen.
[1] ich seh in Deinem Posting keinen Regex.
cu,
Andreas
Hallo,
[1] ich seh in Deinem Posting keinen Regex.
https://forum.selfhtml.org/?t=146255&m=948880
Grüße
Thomas
Hello out there!
- Das mit dem + sehe ich noch ein, alles andere ist echt nett, aber nicht wirklich notwenig. +xx-xxx-xxxxx-nebenstelle ist echt ausreichend.
Nein, das Leerzeichen ist zwingend notwendig. Sinvollerweise nicht nur U+0020 space, sondern auch das in dem Fall bessere U+00A0 no-brake space.
Nur so kann man Telefonnummern den geltenden Regeln entsprechend angeben. (Was lese ich da? Diese gelten auch in Österreich.)
'/', '(', ')' sind demnach überflüssig, würde ich aber wegen immer noch breiter Verbreitung nicht ausschließen.
- Was mich jetzt wirklich sauer macht, dass schon drei besch*** Anworten gibt, in der jeder echt nur herumlamentiert.
Muss ich dazu was sagen? Nö, ich glaube, Struppis Antwort sollte reichen.
See ya up the road,
Gunnar
Hallo,
Nur so kann man Telefonnummern den geltenden Regeln entsprechend angeben. (Was lese ich da? Diese gelten auch in Österreich.)
Was quatsch ist.
http://www.rtr.at/web.nsf/deutsch/Telekommunikation_Nummerierung_FAQ_FAQNummerierung_FAQN136?OpenDocument
Grüße
Thomas
Hallo,
Ich hab nur eine kleine Frage und zwar funktioniert diese Abfrage irgendwie nicht und ich weiß nicht warum?
if(documet.Formular.telefon.value.match(/[0-9/-]/));
alert("Bitte geben Sie eine gültige Telefonnummer ein. Sie dürfen nur Zahlen von 0-9 und die Sonderzeichen -/ eingeben.")
document.Formular.telefon.focus();
return false;
}
Vielleicht hilft dir das weiter:
([0-9]|\s|-|+|(|)|/)
Träfe z.B. auf:
0123-456-789
+12 (0) 223-45-450 4333
+ 123 456-789/ 3434 - 345
zu.
Lade dir http://kodos.sourceforge.net/ herunter, damit kannst du reguläre Ausdrücke ganz gut testen.
Grüße
Thomas
PS:
Vielleicht hilft dir das weiter:
http://www.galileocomputing.de/openbook/javascript/javascript12.htm#Xxx266389
Grüße
Thomas
Hello out there!
([0-9]|\s|-|+|(|)|/)
Was ziemlich kompliziert aussieht, aber wohl dasselbe tut wie ([0-9\s()/+-])
Wozu eigentlich die Klammern?
Träfe z.B. auf:
0123-456-789
+12 (0) 223-45-450 4333
+ 123 456-789/ 3434 - 345
zu.
Und auch z.B. auf "Rendez-vous", ":-)", "4th of July, Asbury Park", ...
Will man sicherstellen, dass von Anfang ('^') bis Ende ('$') ausschließlich die genannten Zeichen vokommen, sähe der reguläre Ausdruck eher so aus:
[1]+$
Damit ist aber nicht einmal sicher, dass überhaupt eine Ziffer vorkommt.
Aber warum sollten eigentlich keine Buchstaben vorkommen? Diese auszuschließen ist nicht sinnvoll, da dadurch Vanity-Rufnummern unzulässig wären.
See ya up the road,
Gunnar
0-9\s()/+- ↩︎
hi,
Aber warum sollten eigentlich keine Buchstaben vorkommen? Diese auszuschließen ist nicht sinnvoll, da dadurch Vanity-Rufnummern unzulässig wären.
Hach ja, diese herrliche Erfindung ...
Wir haben bei uns "Helpdesks" für bestimmte Projekte, deren Rufnummern immer nur in Vanity-Schreibweise angegeben werden - blöd nur, dass ein Großteil der Telefone noch gar keine Buchstaben auf den Tasten hat, sondern nur Ziffern. Es lebe die Eitelkeit!
gruß,
wahsaga
Hallo,
blöd nur, dass ein Großteil der Telefone noch gar keine Buchstaben auf den Tasten hat, sondern nur Ziffern. Es lebe die Eitelkeit!
und nun stell dir bloß ältere Leute vor, die seit über dreißig Jahren ihr klassisches graues Post-Telefon mit mechanischer Wählscheibe haben! Die gibt's nämlich tatsächlich noch! (sowohl die Leute als auch die Telefone)
Ciao,
Martin
Hello out there!
blöd nur, dass ein Großteil der Telefone noch gar keine Buchstaben auf den Tasten hat, sondern nur Ziffern. Es lebe die Eitelkeit!
und nun stell dir bloß ältere Leute vor, die seit über dreißig Jahren ihr klassisches graues Post-Telefon mit mechanischer Wählscheibe haben! Die gibt's nämlich tatsächlich noch! (sowohl die Leute als auch die Telefone)
Du meinst so eins? http://www.rotarydialphones.com/500newbig.bak >;-)
See ya up the road,
Gunnar
Hallo Gunnar,
Du meinst so eins? http://www.rotarydialphones.com/500newbig.bak >;-)
nee, das sieht mir noch'n Tick älter aus. Interessant, dass es sogar schon mit Buchstaben markiert ist! Ich meinte aber eher dieses Modell

das auch meine Eltern bis Mitte der 90er Jahre noch benutzt haben.
Ciao,
Martin
echo $begrüßung;
Du meinst so eins? http://www.rotarydialphones.com/500newbig.bak >;-)
nee, das sieht mir noch'n Tick älter aus. Interessant, dass es sogar schon mit Buchstaben markiert ist! Ich meinte aber eher dieses Modell
Die Buchstaben auf den Telefonen sind überm großen Teich schon länger (immer?) in Mode, und da kommt das Exemplar auch her. Es also mit hiesiger Technik zu vergleichen gilt nicht.
Auf dieser Seite amerikanischer Telefone haben selbst die ältesten Telefone, bei denen der Nummernschalter (Wählscheibe) erkennbar ist, Buchstaben neben den Ziffern: http://www.phonecoinc.com/
echo "$verabschiedung $name";
habe d'ehre Gunnar
Aber warum sollten eigentlich keine Buchstaben vorkommen? Diese auszuschließen ist nicht sinnvoll, da dadurch Vanity-Rufnummern unzulässig wären.
Hmhh, es handelt sich wohl um die Prüfung eines Formularfeldes. Ich frage mich jetzt allerdings, ob der *normale* Internetuser solche Vanity-Rufnummern besitzt. ;-)
Um einem Einwand "ja aber wenn einer eine hat wird er ausgesperrt" vorzubeugen: Dann soll er seine Nummer mit Zahlen angeben.
man liest sich
Wilhelm
Hello out there!
Um einem Einwand "ja aber wenn einer eine hat wird er ausgesperrt" vorzubeugen: Dann soll er seine Nummer mit Zahlen angeben.
Und wenn er sich seine Telefonnummer gar nicht in Za^W Ziffern gemerkt hat? Worum sollte er auch, er hat ja seine Vanity-Rufnummer?
See ya up the road,
Gunnar
habe d'ehre Gunnar
Um einem Einwand "ja aber wenn einer eine hat wird er ausgesperrt" vorzubeugen: Dann soll er seine Nummer mit Zahlen angeben.
Und wenn er sich seine Telefonnummer gar nicht in Za^W Ziffern gemerkt hat? Worum sollte er auch, er hat ja seine Vanity-Rufnummer?
Sorry, dann zweifle ich an seinem Intellekt.
man liest sich
Wilhelm
Hello out there!
Und wenn er sich seine Telefonnummer gar nicht in Za^W Ziffern gemerkt hat? Worum sollte er auch, er hat ja seine Vanity-Rufnummer?
Sorry, dann zweifle ich an seinem Intellekt.
Mir geht’s nicht darum, ob er (oder sie, nennen wir sie Alice) zu blöd ist, sich die Nummer zu merken, sondern ob sie zu faul dazu ist. Das ist ja gerade der Sinn von Vanity-„Nummern“, dass man sich keine komplizierte Ziffernfolge merken muss.
Nun bastelt Bob ein Formular und bittet Alice: Trag deine Telefonnummer ein. Alice, stolz auf ihre Vanity-„Nummer“, tut das – mit Buchstaben, denn sie will ja gerade, dass auch andere in den Genuss ihrer einfach zu merkenden Vanity-„Nummer“ kommen. Und dass muss sie feststellen, dass Bob sein Formular so blöd geplant hat, dass das nicht möglich ist. Ärgerlich.
Alice gibt also ihre Rufnummern in Ziffern ein. (Ihr Intellekt reicht dafür aus. ;-))
Nehmen wir an, das Formular dient einer Mitgliederliste einer Was-auch-immer-Gemeinschaft. Carol sucht nun in der Liste Alice’ Nummer und denkt sich: Sauschwer zu merken. Hätte Bob nicht so ein blödes Forumular vorgesehen, hätte Alice’ Vanity-„Nummer“ in der Liste gestanden, die Carol sich einfach hätte merken können.
See ya up the road,
Gunnar
PS: Ich hab mal ein Formular gebastelt, das u.a. in verschieden Formaten eingegebene Telefonnumern in FQTN umwandelt.
habe d'ehre Gunnar
Mir geht’s nicht darum, ob er (oder sie, nennen wir sie Alice) zu blöd ist, sich die Nummer zu merken, sondern ob sie zu faul dazu ist. Das ist ja gerade der Sinn von Vanity-„Nummern“, dass man sich keine komplizierte Ziffernfolge merken muss.
Dann wollen wir mal hoffen, dass die Eltern von Alice nicht um die 80 Jahre sind. Ich stelle mir gerade vor, wieviele Anrufe ich noch von meinen Eltern bekäme, wenn sie nur 0800-SOHNNR2 kennen wuerden.
Lassen wir es gut sein. ;-)
man liest sich
Wilhelm
Ich stelle mir gerade vor, wieviele Anrufe ich noch von meinen Eltern bekäme, wenn sie nur 0800-SOHNNR2 kennen wuerden.
Mehr auf jeden Fall, ist ja schließlich eine kostenlose Nummer *fg*
Siechfred
habe d'ehre Siechfred
Ich stelle mir gerade vor, wieviele Anrufe ich noch von meinen Eltern bekäme, wenn sie nur 0800-SOHNNR2 kennen wuerden.
Mehr auf jeden Fall, ist ja schließlich eine kostenlose Nummer *fg*
Wieso? Die würden vielleicht irgendwo landen, aber mit Sicherheit nicht bei mir. Mal ganz davon abgesehen, dass ich Ihnen dann erst ein neues Telefon kaufen und sie in die Tiefen des Doppel- und Dreifachtipp einweisen müsste. Obwohl, das könnte ich auch 0800-SOHNNR1 aufhalsen, der wohnt Luftlinie 2km weg. :-) Wenn ich sowas denn wollen würde.
man liest sich
Wilhelm
hi,
Mal ganz davon abgesehen, dass ich Ihnen dann erst ein neues Telefon kaufen und sie in die Tiefen des Doppel- und Dreifachtipp einweisen müsste.
Beim Wählen einer Vanity-Rufnummer tippst du die Tasten nicht entsprechend oft der "Position" des Buchstabens auf der Taste, sondern für jeden Buchstaben ein mal eine Taste - die, auf der er steht.
gruß,
wahsaga
habe d'ehre wahsaga
Beim Wählen einer Vanity-Rufnummer tippst du die Tasten nicht entsprechend oft der "Position" des Buchstabens auf der Taste, sondern für jeden Buchstaben ein mal eine Taste - die, auf der er steht.
Daran kann man erkennen, dass wohl auch ich damit überfordert bin. :-)
man liest sich
Wilhelm
Hello out there!
Ich stelle mir gerade vor, wieviele Anrufe ich noch von meinen Eltern bekäme, wenn sie nur 0800-SOHNNR2 kennen wuerden.
OK, sicher nicht die beste Idee, _hierzulande_ ausschließlich die Vanity-Nummer anzugeben. Besser beide: 0800-SOHNNR2 und 0800 7646672.
[…] sie in die Tiefen des Doppel- und Dreifachtipp einweisen müsste.
?? Bei Vanity-Nummern wird jeder „Buchstabe“ nur einmal getippt (im Gegensatz zu SMS ohne T9). 'S' steht für '7', nicht für '7777'.
See ya up the road,
Gunnar
hi,
Um einem Einwand "ja aber wenn einer eine hat wird er ausgesperrt" vorzubeugen: Dann soll er seine Nummer mit Zahlen angeben.
Und wenn er sich seine Telefonnummer gar nicht in Za^W Ziffern gemerkt hat?
Dann soll er halt seine Telefontastatur zur "Übersetzung" heranziehen. (Dass _er_ wenigstens eine mit zusätzlichen Buchstaben auf den Zifferntasten hat, davon darf ich ja wohl ausgehen.)
gruß,
wahsaga
Leider haben mir eure ganzen Antworten nicht wirklich geholfen, da ich immer noch nicht weiß, was ich falsch gemacht habe.
Die Abfrage soll ein formularfeld übeprüfen.
habe d'ehre Horst
Leider haben mir eure ganzen Antworten nicht wirklich geholfen, da ich immer noch nicht weiß, was ich falsch gemacht habe.
Was genau gefällt Dir in https://forum.selfhtml.org/?t=146255&m=948880 nicht?
man liest sich
Wilhelm
» Was genau gefällt Dir in https://forum.selfhtml.org/?t=146255&m=948880 nicht?
man liest sich
Wilhelm
if(documet.Formular.Telefon.value.match([0-9]|\s|-|+|(|)|/)){
alert("Bitte geben Sie eine gültige Telefonnummer ein. Sie dürfen nur Zahlen von 0-9 und die Sonderzeichen -/ eingeben.");
document.Formular.Telefon.focus();
return false;
}
Das diese Abfrage einfach nicht das macht ,was sie eigentlich soll.
Sie prüft eben nicht.
Hello out there!
if(documet.Formular.Telefon.value.match([0-9]|\s|-|+|(|)|/)){
Das diese Abfrage einfach nicht das macht ,was sie eigentlich soll.
Gehe zurück zur Badstraße.
Liest du eigentlich die dir gegebenen Antworten? Anscheinend nicht, also begib dich in das Gefängnis. Gehe nicht über Los ...
See ya up the road,
Gunnar
Hallo,
if(documet.Formular.Telefon.value.match([0-9]|\s|-|+|(|)|/)){
alert("Bitte geben Sie eine gültige Telefonnummer ein. Sie dürfen nur Zahlen von 0-9 und die Sonderzeichen -/ eingeben.");
document.Formular.Telefon.focus();
return false;
}
Du hättest das schon richtig notieren müssen (/[0-9] .... /);
Das diese Abfrage einfach nicht das macht ,was sie eigentlich soll.
Sie prüft eben nicht.
Aber wenn du Gunnars Posting beobachtet hättest, hättest du daraus sowas machen können ({1,15} = 1 bis max 15 stellen kann die Nummer haben)
----------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled</title>
<script type="text/javascript">
function checkTel() {
var regex = /[1]{1,15}$/;
var tNummer = document.telform.tel.value;
if(!regex.test(tNummer)) {
alert("Bitte geben Sie eine gültige Telefonnummer ein. Sie dürfen nur Zahlen von 0-9 und die Sonderzeichen -/ eingeben.")
document.telform.tel.focus();
return false;
} else {
alert("passt");
document.telform.tel.focus();
return false;
}
}
</script>
</head>
<body>
<form name="telform">
<input type="text" name="tel" value="">
<input type="Button" value="check" onclick="checkTel();">
</form>
</body>
</html>
-----------------
Allerdings sind noch immer solche angaben wie "23123+-() ()" möglich.
Grüße
Thomas
0-9\s()/+- ↩︎