>我在页面上使用PrimeFaces日历组件。模式属性设置为 MM/dd/yyyy HH:mm:ss
。组件值属性链接到 Bean 中的java.util.Date
变量。当我以我期望的格式打开页面日期时,但在更改值后,格式将始终更改为不同的格式。
预期格式 - 06/15/2015 08:00:30
更改值后的格式 - 06/15/2015 8:00 AM
组件使用。
<p:calendar value="#{someBean.someJava.UtilDateVariable}" pattern="MM/dd/yyyy HH:mm:ss" locale="en">
<f:convertDateTime pattern="MM/dd/yyyy HH:mm:ss"/>
</p:calendar>
我已经尝试检查了primefaces展示和文档,不同的语言环境规范以及当前本地化的本地化脚本的使用,但没有效果。
欢迎提出任何建议。
你不需要<f:convertDateTime pattern="MM/dd/yyyy HH:mm:ss"/>
.此标记将字符串转换为对象,反之亦然。
Primefaces 文档仅使用 Pattern 属性,有时 locale 属性会导致麻烦。尝试:
<p:calendar value="#{someBean.someJava.UtilDateVariable}" pattern="MM/dd/yyyy HH:mm:ss"/>
这很旧,但我也有类似的问题,日历显示正确的日期,但是当我打开日期选择器时,模式似乎是错误的。
三个小时后,我结束了它是引导模式。
为了快速解决,我在jsf页面上包含一个javascript文件,其中包含模式设置:
在 XHTML 中
<h:outputScript library="js" name="myscripts.js" />
在JS中
$(document).ready(function() {
$.fn.datepicker.defaults.format = "dd/mm/yyyy";
});