樓主做的是一個請假流程溢豆,需要設定請假開始時間與結束時間。然而發(fā)現(xiàn)有bug.開始時間 蜡秽、結束時間府阀、申請時間竟然可以毫無關系,這顯然是不符合邏輯的芽突。于是找了一些資料后试浙,修改代碼如下
,{
xtype: 'datefield',
fieldLabel: '請假開始時間',
format: 'Y/m/d H:i:s',
name: 'startTime',
id:'startTime',
//下面是為了修補bug增加的代碼
value: Ext.Date.add(new Date(), Ext.Date.DAY, 1),? ? //value:顯示在控件上的時間,下面會深入講解
minValue: Ext.Date.add(new Date(), Ext.Date.DAY, 1),? ?//minValue:對日歷控件進行限制诉瓦,不能選取今天及以前的日子川队,見下圖
listeners:{? ? ?//監(jiān)聽事件
select: function () {? ? //select函數(shù)
var start = Ext.getCmp('startTime').getValue();
Ext.getCmp('endTime').setMinValue(start);? ? ?//設置結束時間不早于開始時間
var endDate = Ext.getCmp('endTime').getValue();??
if (start > endDate) {
Ext.getCmp('endTime').setValue(start);
}}}
},{
xtype: 'datefield',
fieldLabel: '請假結束時間',
format: 'Y/m/d H:i:s',
name: 'endTime',
id: 'endTime',
value: Ext.Date.add(new Date(), Ext.Date.DAY, 1),
minValue: Ext.Date.add(new Date(), Ext.Date.DAY, 1),
listeners:{
select: function () {
var start = Ext.getCmp('startTime').getValue();
var endDate = Ext.getCmp('endTime').getValue();
if (start > endDate) {
Ext.getCmp('startTime').setValue(endDate);
}}}}
Ext.Date.add(date, interval, value)
先說date.我這里用的是new Date(), 當然各位也可以明確一個時間點,比如new Date(7/1/1997),這是一個初始的值睬澡。更詳細的大家可以看ext4.0.7官方文檔
然后interval.可選的值就非常豐富了固额。Ext.Date.YEAR? Ext.Date.MONTH Ext.Date.DAY,Ext.Date.HOUR,Ext.DateExt.MINUTE,Date.SECOND,Ext.Date.MILLI。這就是value的值
最后說value,這是一個數(shù)值煞聪,可以為正數(shù)斗躏,也可以為負數(shù)。
然后大家可以發(fā)現(xiàn)我的例子就是在當前日期加上1天昔脯。