我正在使用extjs 3.4在门户中添加添加日期字段以选择日期范围。开始日期和结束日期意味着如果我在开始日期选择2014年1月28日,那么我想验证结束日期在2014年1月28日之后显示在30仅限天数。
我还想在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()
}
}
}
答案 0 :(得分:1)
我认为您可以通过在datefield
上设置select
的最小值和最大值来获得与您描述的行为类似的行为:
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演示。