我正在尝试使用SSJS来更新日期字段。如果未选择“使用日期/时间选择器弹出窗口”选项,则此方法可以正常工作。但是,如果选中此选项,则更新不起作用。谁能解释为什么会这样?这是我的代码:
<xp:panel rendered="true">
<xp:button value="Set Date Value" id="button1">
<xp:eventHandler event="onclick" submit="true"
refreshMode="partial" refreshId="DateField">
<xp:this.action><![CDATA[#{javascript:document1.setValue("DateField","01.01.1970");}]]></xp:this.action>
</xp:eventHandler></xp:button>   
<xp:inputText id="DateField" value="#{document1.DateField}">
<xp:this.converter>
<xp:convertDateTime type="date"></xp:convertDateTime>
</xp:this.converter>
<xp:dateTimeHelper></xp:dateTimeHelper>
</xp:inputText>
</xp:panel>
答案 0 :(得分:7)
为了能够设置日期字段,您需要使用正确的日期格式设置它
document1.setValue("DateField","01.01.1970")
日期格式必须是java.util.Date,所以试试这个
document1.setValue("DateField",new Date("01.01.1970"))
但我建议这样做,因为那样你的代码就不会受到服务器使用特定语言环境设置的约束。
var date=new Date();
date.setFullYear(1970)
date.setMonth(0) //remember months starts with 0
date.setDate(1)
document1.setValue("DateField",date)
有一件事是我在Notes客户端中运行时没有这个工作,但这可能是一个错误。