我的xpage正在使用xe:djDateTextBox(下图):
<xe:djDateTextBox id="djDateCreatedFrom"
value="#{compositeData.archiveDocument.entryDateFrom.time}"
title="#{javascript:languageGetLabelName('_arch_from_date')}"
style="width:49%;" showReadonlyAsDisabled="true"
readOnly="#{javascript:!compositeData.editMode}">
<xe:this.converter>
<xp:convertDateTime>
<xp:this.pattern><![CDATA[${javascript:"dd.MM.yyyy"}]]></xp:this.pattern>
</xp:convertDateTime>
</xe:this.converter>
public class ArchiveDocument extends Param{
/**
*
*/
private Calendar entryDateFrom;
public ArchiveDocument() {
super();
entryDateFrom = Calendar.getInstance();}
public Calendar getEntryDateFrom() {
return entryDate;
}
public void setEntryDateFrom(Calendar entryDate) {
this.entryDate = entryDate;
}
..... }
如果我设置标准日期时间选择器而不是xe:djDateTextBox一切正常:(吼叫)
<xp:inputText id="txtDateCreatedFrom"
style="width:75.0%"
value="#{compositeData.archiveDocument.entryDateFrom.time}"
readonly="#{javascript:!compositeData.visible}"
dojoType="dijit.form.DateTextBox">
<xp:this.converter>
<xp:convertDateTime>
<xp:this.pattern><![CDATA[${javascript:"dd.MM.yyyy"}]]></xp:this.pattern>
</xp:convertDateTime>
</xp:this.converter>
<xp:dateTimeHelper></xp:dateTimeHelper>
</xp:inputText>
IE,Domino服务器,xpage中的模式的设置:
我的语言IE设置:英语(美国联邦)[en-US]
图案:&#34; DD.MM.YYYY&#34;
Domino服务器9.0.1 FP2
Web用户首选项:默认区域语言环境:服务器区域设置
我的页面没有显示日期时间,如27.11.2014所示。
它显示日期时间为11/27/2014。
如果我使用标准日期时间选择器,一切正常。
提前致谢!
答案 0 :(得分:0)
您的网页是否显示预先保存的值,或者只是默认为当前日期?如果是前者,你可能会误解转换器的功能。
转换器的工作是将服务器端日期/时间值转换为文本字符串,反之亦然。转换器代码全部运行在服务器端,因此如果没有预先存在的值,它将只传递一个空字符串。因此转换器不是修改浏览器提供的格式的地方,Dojo将定义值。
Dojo语言环境设置将用于用于默认值或在浏览器上输入的日期时间格式。我不确定这是否有助于解释日期和本地化http://xomino.com/2014/01/14/dealing-with-dates-and-localization-in-xpages/