2014-02-28 36 views
0

我正在使用extjs 3.4在門戶網站中添加日期範圍選擇日期範圍。開始日期和結束日期意味着如果我選擇2014年1月28日開始日期然後我想驗證結束日期2014年1月28日後僅在30天內顯示。如何在extjs中選擇前驗證日期字段3.4

,我也想驗證的只有30天

開始日期和結束之間的差異
{ 
id:'funnelStartId', 
xtype: 'datefield', 
format : 'd-M-Y', 
editable:false, 
emptyText:'Start date', 
listeners:{ 
select: function (value,date){ 
getFunnelDateRange()  
} 
} 
},{ 
id:'funnelEndId', 
`enter code here` xtype: 'datefield', 
format : 'd-M-Y', 
editable:false, 
emptyText:'End date', 
listeners:{ 
select: function (value,date){ 
getFunnelDateRange()  
} 
} 
} 

回答

1

我想你可以通過設置最小值和最大值,以獲得類似的行爲在一個你描述的datefieldselect

var dateValidate = function() { 
     var dateFld1 = Ext.getCmp('funnelStartId'); 
     var dateFld2 = Ext.getCmp('funnelEndId'); 
     startValue = dateFld1.getValue(); 
     endValue = dateFld2.getValue(); 
     maxEndValue = startValue.add(Date.DAY, 30); 
     if (endValue < startValue || endValue > maxEndValue) { 
      dateFld2.setValue(null); 
     } 
     dateFld2.setMinValue(startValue); 
     dateFld2.setMaxValue(maxEndValue); 
    } 

我有一個創建fiddle示範。