Value-Change-listener nicht in der primefaces-Kalender
Ich bin mit primefaces 3.2 und JSF 2.0
Mein Szenario ist, ich habe die Datei-Datum, Datum der letzten und nächsten Termin in meiner form.
Wenn Benutzer Datei-Datum, die ich brauche, um zu update Datei Datum Wert in Bohnen, so dass es Wert ist, kann verwendet werden als Mindest-Datum letztes Datum von Attribut mindate und so in der nächsten Auswahl des Datums.
Als pro mein wissen Wert ändern listener ausführen kann, bei der form der Einreichung, so kann ich es nicht verwenden. Ich habe verwendet, p:ajax. Aber noch bin ich nicht in der Lage, die Datei Datum. Wie Datei Datum ist nicht festgelegt, es ermöglicht dem Benutzer zu wählen, Datum der letzten und nächsten Zeitpunkt vor dem Datum der Datei Datum.
caseMaster.xhtml
<p:calendar value="#{caseUitility.caseMaster.fileDate}" id="fileDate" effect="fadeIn" pattern="dd/MM/yyyy" readOnlyInputText="true">
<p:ajax event="change" listener="#{caseUitility.dateChange}"/>
</p:calendar>
<p:calendar value="#{caseUitility.caseMaster.lastDate}" required="true" id="lastDate" effect="fadeIn" pattern="dd/MM/yyyy" readOnlyInputText="true" mindate="#{caseUitility.caseMaster.fileDate}" >
</p:calendar>
CaseUitility.java
public void dateChange(ActionEvent ae) {
System.out.println("File Date: " + caseMaster.getFileDate());
System.out.println("Hello... I am in DateChange");
}
kann keine Anleitung mich, was mache ich hier falsch?
Du musst angemeldet sein, um einen Kommentar abzugeben.
In neueren Versionen von PrimeFaces,
SelectEvent
sollte usedsee den folgenden code-snippetIn älteren primefaces-Versionen verwenden
DateSelectEvent
Sollten Sie ein update auf Ihrem p:ajax. Ich hatte Probleme bei der Auswahl ein Datum mit der Datumsauswahl und die bei der manuellen Eingabe in das Feld. Das change-Ereignis war nicht triggerd in beide Richtungen. Deshalb habe ich eine p:ajax-und eine f:ajax mit verschiedenen Veranstaltungen.
Und in der bean -
Hoffe, das hilft
Meine Lösung:
Und in der bean:
Ich denke, man muss überlegen, dies zu tun:
Wenn Sie die "Fokus" - event, wird ausgelöst bei änderung oder dateSelect für Kalender primefaces Kontrolle.
Verwenden ajax-event als dateSelect
wie
Zuhörer,
aber Bedenken Sie, dass, sollten Sie nicht verwenden, jede andere id der Komponente im Prozess (also nur @dies erlaubt-in-Prozess), sonst listener wird nicht funktionieren.
Können Sie
onstart
undoncomplete
(erscheint nicht in primefaces doc).Ich gelöst mit:
Javascript:
Hoffe, dies hilft jemand!