2017-09-20 32 views
1

我有一个日历,我可以选择的日期和时间(仅适用于小时和分钟):Primefaces日历不显示秒

<p:calendar locale="de" pattern="dd.MM.yyyy HH:mm"

不,我必须提供英文翻译为好。所以我需要删除localepattern部分。

是否有possiblility有日期和时间(无秒)语言环境意识到日历?

摘要: 当语言环境是德语时,我想有dd.mm.yyyy HH:mm。当语言环境是英语,我想有mm/dd/yyyy HH:mm

+0

请阅读https://stackoverflow.com/questions/2668161/internationalization-in-jsf-when-to-use-message-bundle-and-resource-bundle –

+0

你试过'dd/mm/yyyy HH: mm:ss'?!? –

+0

那么这是默认的英语。我想'DD.MM.YYYY HH:mm'德国和'MM/DD/YYYY HH:mm'英语 – matthias

回答

2

挂钩的模式属性最多返回您希望为每个给定区域格局bean方法。

<p:calendar pattern="#{bean.localePattern}"> 

public String getLocalePattern() { 
    Locale locale = FacesContext.getCurrentInstance().getViewRoot().getLocale(); 
    if (Locale.GERMAN.equals(locale)) { 
     return "dd.MM.yyyy HH:mm"; 
    } else if (Locale.ENGLISH.equals(locale)) { 
     return "MM/dd/yyy HH:mm"; 
    }else { 
     //return default pattern... 
    } 
} 

编辑:雅斯贝尔斯建议利用本地化资源包是一个伟大的(如果你已经/计划使用JSF内置的本地化功能)。

+0

模式':ss'从模式似乎是对我更有活力。但是,请注意,该月份由“M”(大写) –