Richfaces + AjaxValidator

  • Themenstarter Themenstarter NuernbergerBub
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
N

NuernbergerBub

Gast
Hallo zusammen,

ich habe ein Problem mit dem Ajax-Validator:
Sobald ich meine Form anzeige, kommt bei den Feld Nachname der "passedMarker" obwohl das Feld null ist! Ändere ich den Inhalt im Feld ab, funzt der Validator richtig. Nur nicht beim erstmaligen Anzeigen der Form.

Wie kann ich das einstellen, da er gleich am Anfang die Form prüft.

Danke schonmal für eure Hilfe.

Java:
<h:inputText value="#{Kunde.kundendaten.nachname}" id="nachname">
        <rich:ajaxValidator event="onblur"  />
</h:inputText>
<rich:message for="nachname" ajaxRendered="true" rendered="true">
	<f:facet name="errorMarker">
          	<h:graphicImage alt="Fehler" value="images/Forbidden_Red_24.png" width="24" height="24"/>
        </f:facet>
	<f:facet name="passedMarker">
		<h:graphicImage alt="Fehler" value="images/Ok_Green_24.png" width="24" height="24"/>
	</f:facet>    
</rich:message>

BEAN:
Java:
@NotEmpty (message="Pflichtfeld")
@Length(min=2, message="Name wird benötigt")
private String nachname;
 
Was nen Versucht wert wäre: Vielleicht noch einen ajaxValidator auf den onload Event setzen?
 
So funktioniert das leider auch nicht! :-( Weiß noch jemand Rat?

Java:
                <h:inputText value="#{Kunde.kundendaten.nachname}" id="nachname">
                   <rich:ajaxValidator event="onload"  />
                    <rich:ajaxValidator event="onblur"  />
                </h:inputText>
 
Versuchs mal mit

<h:inputText value="#{Kunde.kundendaten.nachname}" id="nachname" required="true">

mit dem Attribut requiredText="Pflichteingabe" kannst du noch eine Fehlermeldung schreiben.

Tipp am Rande:

Benutz anstatt
<rich:ajaxValidator event="onblur" />
lieber
<rich:ajaxValidator event="onkeyup" ignoreDupResponses="true"/>

Dadurch prüfst du direkt während des Eintippens. Durch ignoreDupResponses="true" wird dafür gesorgt, dass wenn jemand schnell tippt erst nach dem Tippen geprüft wird anstatt nach jedem Tastenanschlag.
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben