primefaces日历不调用valuechangelistener

时间:2013-05-08 06:47:32

标签: jsf jsf-2 primefaces calendar

这是代码片段

        <p:calendar id="from" value="#{documentInsertController.from}"
          yearRange="1900:2015" pattern="dd/MM/yyyy"
     mindate="#{documentInsertController.today}"
            valueChangeListener="#{documentInsertController.calenderChangeListener}">

<p:ajax event="change" partialSubmit="from" render="to"/>

        </p:calendar>

这是bean类的

中的actionlistener方法
public void calenderChangeListener(ValueChangeEvent e){

        System.out.println("Calender Change Listener Invoked: "+e.getNewValue());
            }

我想知道缺少什么以及为什么它没有调用action方法?

1 个答案:

答案 0 :(得分:1)

您可以尝试<p:ajax event="dateSelect"

喜欢这样(我删除了partialSubmit="from"而不是render更改为update,因为其p:ajax而非f:ajax

<p:ajax event="dateSelect"  
        listener="#{documentInsertController.calenderChangeListener}" 
        update="to"/>

同时将您的方法签名更改为:

public void calenderChangeListener(SelectEvent event) {
    Date date = event.getDate();
    System.out.println("File Date: " + date);
    System.out.println("Hello... I am in DateChange");
}