2014-01-24 100 views
0

我試圖使用SSJS更新日期字段。如果沒有選擇「使用日期/時間選擇器彈出」選項,這可以正常工作。但是,如果選中此選項,則更新不起作用。任何人都可以解釋爲什麼這是?這裏是我的代碼:XPages - 使用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> 

回答

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客戶端運行時沒有得到這個工作,但這可能是一個錯誤。

+0

完美的作品。非常感謝你! –