gpt4 book ai didi

java - 在 Spring MVC Web 应用程序中为 JQuery DatePicker 提供基于区域设置的日期格式的最佳方法?

转载 作者:行者123 更新时间:2023-11-30 11:41:35 26 4
gpt4 key购买 nike

我正在开发一个 Spring 3 MVC 应用程序,并且有 JQuery 日期选择器,我想提供一个基于用户区域设置的日期格式。我查看了使用 @ModelAttribute 注释的 Controller 方法,但看不到如何获取请求上下文。

当前代码:

<script type="text/javascript">
<![CDATA[
$( "#startDate").datepicker({
showOn: "both",
buttonImage: "${calendarIconUrl}",
dateFormat:'yy/mm/dd',
minDate:0
});
]]>
</script>

所以这是我想用基于区域设置的日期格式替换的 'yy/mm/dd'

编辑:所以我找到了http://docs.jquery.com/UI/Datepicker/Localization但现在我需要弄清楚如何从浏览器获取国家/地区代码...

最佳答案

我遇到了类似的问题,其中区域设置是由服务器环境设置的(与浏览器区域设置不同)。我通过这种方式将 Java 语言环境“翻译”为 JQuery Datepicker 语言环境:

Locale locale = LocaleContextHolder.getLocale();
String datepickerLocale;
if(locale.getLanguage().equals("de")){
datepickerLocale = "de"; // only "de", no country code
} else if (locale.getLanguage().equals("en")){
if(locale.getCountry().equals("GB")){
datepickerLocale = "en-GB"; // en-GB must be set explicitly
} else if(locale.getCountry().equals("US")){
datepickerLocale = ""; // en-US is default
}
}
// [...] more locales if needed, see docs for Datepicker Localization
uiModel.addAttribute("datepickerLocale", datepickerLocale);

然后在 View 中设置:

$.datepicker.setDefaults( $.datepicker.regional['${datepickerLocale}'] );

从浏览器(请求)获取语言环境应该是这样的(未测试)

RequestContextUtils.getLocaleResolver(request).resolveLocale(request)

更新:我必须实现一个 DateEditor 来进行验证,它告诉 Spring 提交的数据使用哪个语言环境。

关于java - 在 Spring MVC Web 应用程序中为 JQuery DatePicker 提供基于区域设置的日期格式的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12212082/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com