0

2 つの時間フィールドを使用します。1 つは開始時刻で、もう 1 つは終了時刻です。starttime で時間を選択すると、この値が endtime にロードされます。

{
xtype: 'timefield',
flex: 1,
margins: '10',
maxHeight: 25,
maxWidth: 100,
fieldLabel: '',
labelAlign: 'top',
name: 'startTijd',
allowBlank: false,
altFormats: 'G:i',
format: 'G:i',
listeners: {
    change: {
        fn: me.onTimefieldChange,
        scope: me
    }
}

}

これはリスナーの機能です

onTimefieldChange: function (field, newValue, oldValue, eOpts) {
  Ext.getCmp('eindTijd').setValue(newValue);
}

しかし、私が望むのは、starttime = 14:00 を選択すると、endtime が、この場合は 14:15 の endtime に対して 1 ステップで自動的に増加することです。newValue に 15 を追加しようとしましたが、GMT に 15 が追加されます

4

1 に答える 1

2

Ext は、Ext.Date.addこの種の操作に を提供します。あなたのコードでは、次のようになります。

onTimefieldChange: function (field, newValue, oldValue, eOpts) {
    var convertedValue = Ext.isEmpty(newValue)
        ? null
        : Ext.Date.add(newValue, Ext.Date.MINUTE, 15);
    Ext.getCmp('eindTijd').setValue(convertedValue);
}
于 2013-11-14T08:29:59.767 に答える