XPages - 使用SSJS更新日期字段

时间:2014-01-24 10:11:46

标签: xpages lotus-notes xpages-ssjs

我正在尝试使用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>&#160;&#160;&#160;
<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>

1 个答案:

答案 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客户端中运行时没有这个工作,但这可能是一个错误。