ExtJS有时需要选择一个日期范围。它需要自动判断。选择的开始日期不能大于结束日期,或者结束日期不小于开始日期。实现以下代码。

设计素描:


从上面的图片中可以看到,当选择开始时间时,结束时间的选择范围是自动限定的,并且实现了两个日期选择器的链接。

代码如下:

首先定义链接处理函数。




ext.apply(ext.form.field.vtypes,{
笪特让锷:功能(Val、场){
var date = field.parsedate(Val);

如果(!日期){
返回false;
}
如果(field.startdatefield(this.daterangemax(日期,时间)(| |!!= this.daterangemax.gettime()))){
var启动= field.up('grid)。Down(# +领域。startdatefield);
start.setmaxvalue(日期);
start.validate();
this.daterangemax =日期;
}
如果(field.enddatefield(this.daterangemin(日期,时间)(| |!!= this.daterangemin.gettime()))){
var = field.up('grid)。Down(# +领域。enddatefield);
end.setminvalue(日期);
end.validate();
this.daterangemin =日期;
}
返回true;
},
的daterangetext:'开始日期必须大于结束日期
});
Ext.tip.QuickTipManager.init();


在条码贴纸,带间俄歇复合增加项目,或形式:




{
Xtype:'datefield,
fieldlabel:时间范围的开始,
名称:'startdt,
身份:'startdt,
Vtype:'daterange,
EndDateField:'enddt,
格式:'y-m-d,
宽度:220,
LabelWidth:90,
msgtarget:'side,
autofiterrors:假
{ }。
Xtype:'datefield,
fieldlabel:'结束',
名称:'enddt,
身份:'enddt,
Vtype:'daterange,
StartDateField:'startdt,
格式:'y-m-d,
宽度:170,
LabelWidth:40,
msgtarget:'side,
autofiterrors:假
},{ xtype:按钮,
文本:查询,
iconcls:'fljs,
汉德勒:函数(){…


你能做到上述效果的复制和复制它在extjs4.1.1