Domino 9 und frühere Versionen > ND8: Entwicklung - XPages

XPages customValidator

(1/2) > >>

Matze84:
Hallo zusammen,

ich sitze gerade an der Validierung für eine XPage und ich habe Probleme mit dem customValidator.


--- Code: ---<xp:customValidator>
<xp:this.validate><![CDATA[#{javascript:var wert = getComponent("inputboxGruppeOE").getValue();

                       if (@IsNumber(wert) == 0)
                       {
                    return "Fehlerhafte OE-Nr.";
                       }
                  }]]></xp:this.validate
</xp:customValidator>

--- Ende Code ---

Wenn der User einen Wert in die EditBox eingiebt, der kein Numerischer ist, dann bringt der Validator richtigerweise eine Fehlermeldung
in meiner Error Message auf der XPage.  Im Gegensatz zu den Standard-Validatoren (z.B. validateRequired) lässt sich die XPage trotzdem speichern.

Hat jemand eine  Ahnung woran das liegt, oder was ich da falsch mache?


Gruß

Matthias

Jan Grünklee:
Hallo Matthias,

Dein validate muss true oder false zurückgeben. Bei Dir gibt das einen String zurück. Deine Fehlernachricht kommt in message rein.


--- Code: ---<xp:inputText id="inputText1" value="#{viewScope.test}">
<xp:this.validators>
<xp:customValidator validate="#{javascript:return true oder false}" message="Hier kommt die Fehlermeldung rein"></xp:customValidator>
</xp:this.validators>
</xp:inputText>

--- Ende Code ---

Gruss Jan

Matze84:
Auch wenn ich ein "return false" zurückgebe, wird die XPage gespeichert.

Gibt es einen Parameter, den man setzen muss, damit das Speichern verhindert wird? Wenn man die EditBox als required Field markiert, dann wird das Speichern bei einem leeren Feld auch verhindert. Warum ist das bei einem customValidator anders?

Jan Grünklee:
Hallo Matthias,

wenn Du das Feld leer lässt, dann hat der Custom Validator auch nix zum validieren, d.h. willst Du sicher stellen, dass ein Feld gefüllt ist, dann markierst Du das Feld als required. Wenn Du noch weitere Validierungen haben möchtest, dann baust Du weitere Validators ein, wie z.B. Deinen Custom Validator.

Gruss Jan

Tode:
Bitte code... wahrscheinlich returnst Du einen falschen Datentyp...

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln