Domino 9 und frühere Versionen > Entwicklung

Verbieten von Sonderzeichen

(1/2) > >>

Gravedigger:
Hallo,

ich möchte in einem Feld die Eingabe von Sonderzeichen unterbinden. (im Web)
Leider bin ich hier ein bisschen ratlos. Hat jemand von euch eine Idee?


Danke

Glombi:
Hi,
das geht mit @Matches. Wenn Du nur Buchstaben zulassen möchtest, dann wie folgt:

@If(
 @matches(<Feldname>;"{A-Z}" | @matches(<Feldname>;"{a-z}";
   @Success;
 @Failure("Sie dürfen keine Sonderzeichen eingeben!")
)

Andreas

koehlerbv:
Zunächst erstmal: Eine Methode, bestimmte Zeichen bereits bei der Eingabe abzuweisen, ist mir nicht bekannt.
M.E. in der Sandbox habe ich zwar mal ein Sample gefunden, das mit JS arbeitet - und dem Timer. Und der taktet ja minimal mit 1 Sekunde - und das dürfte schlicht zu unsicher sein.

Es gibt aber noch einen Trick, wie man NACH der Eingabe die Zeichenkette validieren kann und so entweder eine Eingabevalidierung oder eine Eingabeumsetzung realisieren kann:

Ergebnis := @Implode (@Explode (Eingabestring; StringMitDenVerbotenenZeichen); "")

Das Explode entfernt dabei die Zeichen, die es ja als Delimiter ansieht, aus dem String, das Implode liefert dann wieder einen String. Der Leerstring  als Implode-Delimiter sorgt dafür, daß entfernte Zeichen durch "nichts" ersetzt werden.

HTH,
Bernhard

Gravedigger:

--- Zitat von: Glombi am 18.07.03 - 13:50:25 ---@If(
 @matches(<Feldname>;"{A-Z}" | @matches(<Feldname>;"{a-z}";
   @Success;
 @Failure("Sie dürfen keine Sonderzeichen eingeben!")
)
--- Ende Zitat ---

Das sieht schonmal nicht schlecht aus. Nur eine Frage habe ich noch:
Wie kann ich bei @Failure eine JS-Alert-Box erscheinen lassen?

@Failure("[<script type=\'text/javascript\'><!--alert(\'Bitte entfernen Sie die Sonderzeichen!\');//--></script>]")

Stimmt das?



Danke

Glombi:

--- Zitat ---
--- Zitat von: Gravedigger @Failure("[<script type=\'text/javascript\'><!--alert(\'Bitte entfernen Sie die Sonderzeichen!\');//--></script> ---")

--- Ende Zitat ---

Das wird nicht gehen. Das @Failure(...) erzeugt eine eigene Seite, auf der der Fehlertext ausgegeben wird.

Dein Code würde eine HTTP Fehlermeldung produzieren.

Andreas
--- Ende Zitat ---

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln