【发布时间】:2017-03-31 22:28:01
【问题描述】:
我希望我的p:calendar 能够通过单击日历弹出窗口中的日期以及直接在文本输入字段中编辑日期来工作。
这很好用:
<p:calendar value="#{myBackingBean.date}">
<p:ajax event="valueChange" listener="#{myBackingBean.updateDate()}" />
<p:ajax event="dateSelect" listener="#{myBackingBean.selectDate()}" />
</p:calendar>
但是,一旦我添加了转换器(见下文),即使新日期已转换,也不再为“valueChange”事件(在文本字段中通过键盘编辑日期时)设置新日期正确,但是在支持 bean 中设置的日期是旧值,而不是我在文本字段中编辑的新值:
<p:calendar value="#{myBackingBean.date}">
<f:converter converterId="myLocalDateConverter"/>
<p:ajax event="valueChange" listener="#{myBackingBean.updateDate()}" />
<p:ajax event="dateSelect" listener="#{myBackingBean.selectDate()}" />
</p:calendar>
我怎样才能让它一起工作?
【问题讨论】:
-
在 primefaces 中,日历具有转换器属性。使用此属性传递转换器 ID。
标签: ajax jsf primefaces calendar converter