2016-03-20 18 views
1

Ich verwende die Komponente, um dem Benutzer die Auswahl des Geburtsdatums (Geburtsdatum) zu ermöglichen. Ich sollte eine Fehlermeldung anzeigen, wenn der Benutzer einen Tag größer als das heutige Datum auswählt, um zu verhindern, dass das Alter eine negative Zahl ist. Meine Komponente sieht so aus:Validieren Sie p: Kalenderwert nicht größer als das heutige Datum

<p:calendar id="fechaNacimiento" yearRange="c-100:c" 
    pattern="dd/MM/yyyy" navigator="true" 
    value="#{afiliadoController.afiliado.fecha_nacimiento}" 
    requiredMessage="Debe de insertar la fecha de nacimiento del Afiliado." 
    showOn="button" 
    readonly="#{facesContext.currentPhaseId.ordinal eq 6}" 
    required="#{request.getParameter('validate')}"> 

</p:calendar> 

Ich benutze PrimeFaces und OmniFaces und JSF 2.2. Ich habe versucht, dies zu validieren, indem ich <o:validateOrder components=""/> verwende, aber ich würde zwei Komponenten benötigen und ich habe nur eine. Welche anderen Optionen habe ich?

+0

Warum nicht einen normalen Validator verwenden? – Kukeltje

+0

Ich versuche, das zu vermeiden – Erick

Antwort

1

PrimeFaces <p:calendar> hat ein maxdate Attribut, das maximal auswählbar Date darstellt.

OmniFaces hat eine #{now} Variable, die den Strom Date darstellt.

Machen Sie die Rechnung.

<p:calendar ... maxdate="#{now}" /> 
+0

Ausgezeichnet! Mir war nicht klar, dass ich das Maximum in PrimeFaces hatte! Danke, mein Herr! – Erick

+0

Gern geschehen. – BalusC