2013-04-02 40 views
2

我想要一個沒有默認值的日期時間選擇器控件。似乎沒有可能了:-(Domino 9/Dojo 1.8 - 無默認值的日期時間選擇器

複製,創建一個空白XPage並放置一個日期時間選取的控制。在瀏覽器中打開XPage上,你會看到,它默認爲今天。

我沒有找到任何方法將默認設置爲空值我嘗試設置所有屬性/數據/默認爲0,空,空字符串等 - 沒有運氣

我試過data-dojo- probs屬性的值爲:'',這會將默認值設置爲1970-1-1,但不能爲空。

任何創意?

+0

看看這個,它的工作原理如下:http://stackoverflow.com/questions/15632042/xpages-date-time-picker-field-defaults-to-todays-date –

回答

5

這是ND9一個已知的問題,報告爲SPR DEGN966F5V 。

解決此問題(來自SPR)的解決方法是在postCreate函數中修改小部件原型以防止重置值。

require([ 
     "dojo/_base/lang", 
     "ibm/xsp/widget/layout/DateTextBox", 
     "ibm/xsp/widget/layout/TimeTextBox", 
     "ibm/xsp/widget/layout/DateTimeTextBox" 
], function(lang, DateTextBox, TimeTextBox, DateTimeTextBox){ 
     var a = {}; 
     lang.mixin(a, { 
       postCreate: function(){ 
         this.inherited(arguments); 
       } 
     }); 
     DateTextBox.extend(a); 
     TimeTextBox.extend(a); 
     DateTimeTextBox.extend(a); 
}); 

下面是它工作的一個例子。

<?xml version="1.0" encoding="UTF-8"?> 
<xp:view xmlns:xp="http://www.ibm.com/xsp/core"> 
     <xp:this.resources> 
       <xp:script clientSide="true"> 
         <xp:this.contents><![CDATA[ 
require([ 
     "dojo/_base/lang", 
     "ibm/xsp/widget/layout/DateTextBox" 
], function(lang, DateTextBox){ 
     var a = {}; 
     lang.mixin(a, { 
       startup: function(){ 
         this.inherited(arguments); 
         this.set("value", null); 
       } 
     }); 
     DateTextBox.extend(a); 
}); 
]]></xp:this.contents> 
       </xp:script> 
     </xp:this.resources> 

     <xp:inputText id="inputText1" value="#{sessionScope.inputText1}"> 
       <xp:this.converter> 
         <xp:convertDateTime type="date" /> 
       </xp:this.converter> 
       <xp:dateTimeHelper /> 
     </xp:inputText> 
</xp:view> 
+1

謝謝!我會將它添加到我的工具箱:) –

2

我不知道它是如何工作的注意事項9,但你可以用像CSJS其刪除:

var field= dojo.byId('#{id:field}') 
field.value =""; 

希望它有助於..

1

在應用我以前應用在dateTimeHelper一個的dojoType與此代碼:

<xp:dateTimeHelper id="dateTimeHelper1" dojoType="dijit.form.DateTextBox"> 
</xp:dateTimeHelper> 

這是解決在以前的Domino版本中的問題,其中的頁面儘快刷新爲選擇器是在某些特定風格的IE中選擇。

此代碼似乎在R9上正常工作,無需解決方法。

+0

在R9中工作,但輸入框的日曆圖標消失。 –

相關問題