smartGWT 中的 DateItem 自动将 UTC 日期转换为 Javascript 中的本地客户端浏览器日期
DateItem in smartGWT auto translate UTC date to local client browser date in Javascript
我目前在 java 中使用 smartGWT 4.1 向我们的客户显示 UI 元素 (dateItem) 日历
所有值(在 java 日期对象中)均采用 UTC 格式。但是,当从 smartGWT 传递到 dateitem.setValue(date) Javascript 时,自动将日期值转换为本地用户浏览器时区。
由于我需要 UI 上显示的所有 UTC 格式的日期,有什么方法可以禁用 smartGWT(或 javascript)自动翻译吗?
我已经尝试将字符串值传递给 dateItem,但是 java脚本会将其解析回日期并且转换仍然会发生。此外,我已经尝试 DateUtil.setDefaultDisplayTimezone("00:00") 但仍然没有任何反应。
您是否尝试设置 setShortDateDisplayFormatter:
DateUtil.setShortDateDisplayFormatter(new DateDisplayFormatter() {
public String format(Date date) {
if(date == null) {
return null;
}
DateTimeFormat dateFormatter = DateTimeFormat.getFormat("dd-MM-yyyy"+ "T"+"HH:mm:ss");
return dateFormatter.format(date, TimeZone.createTimeZone(0));
}
});
我目前在 java 中使用 smartGWT 4.1 向我们的客户显示 UI 元素 (dateItem) 日历
所有值(在 java 日期对象中)均采用 UTC 格式。但是,当从 smartGWT 传递到 dateitem.setValue(date) Javascript 时,自动将日期值转换为本地用户浏览器时区。
由于我需要 UI 上显示的所有 UTC 格式的日期,有什么方法可以禁用 smartGWT(或 javascript)自动翻译吗?
我已经尝试将字符串值传递给 dateItem,但是 java脚本会将其解析回日期并且转换仍然会发生。此外,我已经尝试 DateUtil.setDefaultDisplayTimezone("00:00") 但仍然没有任何反应。
您是否尝试设置 setShortDateDisplayFormatter:
DateUtil.setShortDateDisplayFormatter(new DateDisplayFormatter() {
public String format(Date date) {
if(date == null) {
return null;
}
DateTimeFormat dateFormatter = DateTimeFormat.getFormat("dd-MM-yyyy"+ "T"+"HH:mm:ss");
return dateFormatter.format(date, TimeZone.createTimeZone(0));
}
});