在我的html文件中,我有serval datepickers(Primefaces 7.0)。我在下面用js脚本定义了两个Primefaces.locales。一次是“ de”,一次是“ en_US”。现在,我想根据应用程序设置的语言动态选择语言环境。但是即使删除语言环境,它也始终是英语。当我明确写locale="de"
时,它们才是德语。我该怎么做才能使使用的语言环境取决于应用程序中使用的语言?
<p:datePicker locale="bean.getLocale">
PrimeFaces.locales['de'] = {
closeText: 'Schließen',
prevText: 'Zurück',
nextText: 'Weiter',
monthNames: ['Januar', 'Februar', 'März', 'April', 'Mai',
'Juni', 'Juli', 'August', 'September', 'Oktober',
'November', 'Dezember'],
monthNamesShort: ['Jan', 'Feb', 'Mär', 'Apr', 'Mai',
'Jun',
'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dez'],
dayNames: ['Sonntag', 'Montag', 'Dienstag', 'Mittwoch',
'Donnerstag', 'Freitag', 'Samstag'],
dayNamesShort: ['Son', 'Mon', 'Die', 'Mit', 'Don',
'Fre', 'Sam'],
dayNamesMin: ['So.', 'Mo.', 'Di.', 'Mi. ', 'Do.',
'Fr. ', 'Sa.'],
weekHeader: 'Woche', firstDay: 1,
isRTL: false,
showMonthAfterYear: false,
yearSuffix: '',
timeOnlyTitle: 'Nur Zeit',
timeText: 'Zeit',
hourText: 'Stunde',
minuteText: 'Minute',
secondText: 'Sekunde',
currentText: 'Aktuelles Datum',
ampm: false,
month: 'Monat',
week: 'Woche',
day: 'Tag',
allDayText: 'Ganzer Tag'};
PrimeFaces.locales ['en'] = {
closeText: 'Close',
prevText: 'Previous',
nextText: 'Next',
monthNames: ['January', 'February', 'March', 'April',
'May',
'June', 'July', 'August', 'September', 'October',
'November', 'December' ],
monthNamesShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May',
'Jun',
'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec' ],
dayNames: ['Sunday', 'Monday', 'Tuesday', 'Wednesday',
'Thursday', 'Friday', 'Saturday'],
dayNamesShort: ['Sun', 'Mon', 'Tue', 'Wed', 'Tue', 'Fri',
'Sat'],
dayNamesMin: ['S', 'M', 'T', 'W ', 'T', 'F ', 'S'],
weekHeader: 'Week',
weekNumberTitle: 'W',
firstDay: 1,
isRTL: false, //right to left
showMonthAfterYear: false,
yearSuffix:'',
timeOnlyTitle: 'Only Time',
timeText: 'Time',
hourText: 'Time',
minuteText: 'Minute',
secondText: 'Second',
currentText: 'Current Date',
ampm: false,
month: 'Month',
week: 'week',
day: 'Day',
allDayText: 'All Day'};
</script>```
``` String getLocale() {
String l = otherBean.getLanguage();
if (l == "0") {
return "de";
}
else if (l == "1") {
return "en_US";
}
else {
return "de";
}
}```