【问题标题】:primefaces calender not invoking valuechangelistenerprimefaces 日历不调用 valuechangelistener
【发布时间】:2013-05-02 07:27:14
【问题描述】:

这里是代码片段

<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 类中的 actionlister 方法

public void calenderChangeListener(ValueChangeEvent e) {    
    System.out.println("Calender Change Listener Invoked: " + e.getNewValue());
}

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

【问题讨论】:

    标签: jsf jsf-2 primefaces calendar


    【解决方案1】:

    你可以试试&lt;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");
    }
    

    【讨论】:

    • 我在等你丹尼尔 :) 让我检查一下
    • 我的 Eclipse 无法识别 DateSelectEvent 类
    • 您使用的是什么版本的 primefaces ?它是否存在于您的项目构建路径中
    • 现在是 3.5,它是 import org.primefaces.event.SelectEvent; 看到这个 primefaces.org/showcase/ui/calendarAjax.jsf
    • @Daniel 我必须接受这个答案,因为你把我引向了正确的道路:) 谢谢
    猜你喜欢
    • 2012-01-14
    • 1970-01-01
    • 1970-01-01
    • 2014-04-19
    • 2016-03-22
    • 2015-11-28
    • 1970-01-01
    • 1970-01-01
    • 2011-11-11
    相关资源
    最近更新 更多