2

ND9サーバーを実行していて、日付フィールドを使用してXpageを参照する場合、このフィールドのデフォルト値は常に今日の日付です。

8.5.3サーバーでは、コントロールは次のようにレンダリングされます。

<input class="dijitReset dijitInputInner" dojoattachpoint="textbox,focusNode" autocomplete="off" type="text" aria-valuenow="undefined" aria-invalid="false" id="view:_id1:_id2:main:fromTDate" tabindex="0" value="">
<input style="display: none;" type="text" name="view:_id1:_id2:main:fromTDate">

ND9サーバーでは、同じコントロールが次のようにレンダリングされます。

<input class="dijitReset dijitInputInner" type="text" autocomplete="off" data-dojo-attach-point="textbox,focusNode" role="textbox" aria-haspopup="true" aria-invalid="false" tabindex="0" id="view:_id1:_id2:main:fromTDate" maxlength="10" size="10" value="">
<input type="hidden" name="view:_id1:_id2:main:fromTDate" value="2013-03-26">

代わりにDojoDateText Boxを追加することで回避できましたが、この機能は間違っているはずですよね?

4

2 に答える 2

4

これは実際にはv9.0に加えられた修正でした。デフォルトで表示される今日の日付は、予想される動作になりました

于 2013-03-26T17:33:11.477 に答える
1

これをXPageに追加すると、動作は8.5.3のようになります。

<xp:this.resources>
<xp:script clientSide="true">
<xp:this.contents><![CDATA[
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);
});
]]></xp:this.contents>
</xp:script>
</xp:this.resources>

迅速な対応をしてくれたIBMに感謝します。

于 2013-04-01T07:37:12.647 に答える