Seite 1 von 1
Valedierung Felder Bindestrich geht nicht
Verfasst: 30.08.2011, 08:53
von Hormann
Hallo Leute,
ich scheitere an einer bestimmt simplen Schreibfehler in meinem Script:
Ich möchte das nur Buchstaben Leerzeichen und Bindestriche eingegeben werden können. Nur leider klappt es mit den Bindestrichen nicht.
Wo ist mein Fehler?
Code: Alles auswählen
if(xfa.event.newText.match(/[^a-zA-Z+"-"+" "]/)){
xfa.event.change = "";
}
Danke Vorab
Steffi
Valedierung Felder Bindestrich geht nicht
Verfasst: 30.08.2011, 10:33
von armine
Hallo Steffi,
versuche mal
[font=courier new]Formular1.TF1.Textfeld1::change - (JavaScript, client)
if (xfa.event.change.match(/^[a-zA-Z|\s|-]+$/) == null) {
xfa.event.change = "";
xfa.host.beep("3");
}[/font]
vg armine
Valedierung Felder Bindestrich geht nicht
Verfasst: 30.08.2011, 11:35
von Hormann
Danke Armine,
funktioniert Super!
Nur leider Verstehe ich nicht was dieser Abschnitt |\s|-]+$/ und dieser xfa.host.beep("3") bedeuten.
Kannst du mir das vielleciht kurz erklären.
Danke dir nochmal echt klasse.
Gruß
Steffi
Valedierung Felder Bindestrich geht nicht
Verfasst: 30.08.2011, 12:02
von armine
Hallo Steffi,
bau doch deine Regexp mithilfe von
http://www.pagecolumn.com/tool/regtest.htm. Da stehen auch die Erklärungen.
|s|-]+$ sollte |\s|-]+$ sein
\s - matches whitespace; hier das Leerzeichen, würde auch einen Tab erkennen, der wird aber vom LCD abgefangen.
Die drei Möglichkeiten durch das Nadelör zu kommen( [a-zA-Z], \s und der Bindestrich) sind durch ein | getrennt.
+ sorgt dafür, dass es ein Zeichen sein muss (einen String per copy and paste zu übertragen geht also nicht).
^ erzwingt die Betrachtung am dem ersten Zeichen, bei $ ist Schluss.
Kann es sein, dass du auch einen Punkt zulassen willst?
Nun könnte man noch überlegen, dass immer mit einem Großbuchstaben angefangen wird, dass Bindestrich und Leerzeichen nicht nebeneinander und auch nicht am Anfang stehen durfen und vieles mehr.
Viel Glück
armine
Valedierung Felder Bindestrich geht nicht
Verfasst: 01.09.2011, 08:25
von Hormann
Danke echt Klasse Armine,
klasse nun Verstehe ich das auch. kannst du eine Literatur bzw. Webseite empfehlen mit solchen nützlichen Scripthinweisen.
Habe leider in der Schule nur HTML, PHP udn C++ gelernt.
Gruß
Steffi
Valedierung Felder Bindestrich geht nicht
Verfasst: 01.09.2011, 12:59
von armine
Hallo Steffi,
in PHP gibt es RegExp auch. Die umfangreichste Dokumentation habe ich unter
http://www.regular-expressions.info/ gefunden.
Zum Austesten bin ich am Liebsten auf
http://www.pagecolumn.com/tool/regtest.htm – da kann die RegExp ganz einfach nach JavaScript übernommen werden.
vg armine
Valedierung Felder Bindestrich geht nicht
Verfasst: 09.10.2015, 20:05
von Andreas H.
Hallo,
bis hierhin (siehe Anlage) funktioniert das Skript, nur Eingabe von Buchstaben
Umlaute, Punkt und Runde Klammern erlaubt. Ich möchte aber erreichen, dass nur
folgende Eingabe möglich ist.
Der "Punkt" sollte nur nach einem Buchstaben möglich sein.
z.B Anton A. oder Berta B.
und sowas "............." sollte nicht möglich sein!
Hat hier jemand eine Idee dazu?
Gruß
Andreas
Valedierung Felder Bindestrich geht nicht
Verfasst: 10.10.2015, 10:18
von armine
Hallo Andreas,
meinen Glückwunsch, du hast eine neue Spielwiese entdeckt. Mir erschließt sich gerade nicht, welchen Vorteil du dir vom Aufruf von zwei Funktionen im »change« versprichst und warum du mal »this« übergibst (du machst nichts damit), aber »bis hierhin (siehe Anlage) funktioniert das Skript« ist schon mal erfreulich.
Ich habe deine Kernidee aufgegriffen und exemplarisch einige Eingaben verhindert. Das solltest du um weitere Schikanen anreichern können.
vg armine
Valedierung Felder Bindestrich geht nicht
Verfasst: 10.10.2015, 10:56
von Andreas H.
Hallo armine,
mein Grinsen bekommen ich schon wieder nicht aus meinem Gesicht, wenn ich
betrachte, "was Du hier aus dem Ärmel geschüttelt hast".
Der "Baukasten" wird vorerst, für mich, einer bleiben und ich freue mich erneut über
deine Gabe.
"Es nützt nichts, sich die Schuhe eines Größeren anzuziehen. Deine Spuren bleiben
unverwechselbar."
Gruß
Andreas
Valedierung Felder Bindestrich geht nicht
Verfasst: 10.10.2015, 11:00
von Andreas H.
Nachtrag...
Ich sehe es als nette Geste und großes Entgegenkommen, die Skripte auskommentiert zu sehen.
Gruß
Andreas