由于 (readonlyInput="true") 没有属性/选项<p:calendar>
将值重置为 null,因此目前最好的解决方案是使用一些客户端 JS 来重置值,如下所示:
https://stackoverflow.com/a/12325640/396732
但是,只要清除按钮控制 AJAX 按钮,就不会提交新的日历值。
我尝试处理结束日期按钮,例如:
<p:calendar id="end-date"
widgetVar="myEntityEndDate"
value="#{myEntityManager.selectedEndDate}"
readonlyInput="true"
showOn="button">
<!-- update dependent "begin" calendar component: -->
<p:ajax event="dateSelect" process="@this" update="begin-date" />
</p:calendar>
<p:commandButton icon="ui-icon ui-icon-close"
onclick="myEntityEndDate.setDate(null);"
process="end-date"
update="begin-date end-date" />
然而它不起作用......
问:
如何为AJAXed p:calendar 组件实现重置按钮?
附录:
在这里提出了同样的问题:http: //forum.primefaces.org/viewtopic.php?f= 3&t=27821 。看起来 jQuery 可能是“有罪党”。无论如何,它应该是解决/可解决恕我直言。