在项目中经常用到的按时间段搜索数据的条件
ExTJS搜索表单代码如下:
this.formField = {
contaNo :{
xtype:'textfield',
fieldLabel: '集装箱号',
cls:'x-upper-text',
width:120,
name: 'contaNo',
vtype:'alphanum',
// regex: /^\w+$/,
// regexText:"集装箱号只能由字母和数字组成!",
maxLength:12,
upperText: true,
anchor:'100%'
},
billNo :{
xtype:'textfield',
fieldLabel: '提单号',
cls:'x-upper-text',
width:120,
// regex: /^\w+$/,
//regexText:'提单号只能由字母和数字组成',
vtype:'alphanum',
name: 'billNo',
maxLength:15,
upperText: true,
anchor:'100%'
},
beginDate: new Ext.form.ExtDateField({
fieldLabel: '从',
name: 'beginDate',
width:120,
format:'Y-m-d',
value:new Date(new Date().getTime() - 1000 * 60 * 60 * 24 * 7),
allowBlank: false,
anchor:'100%',
inputFormat:'Y-m-d'
}),
endDate : new Ext.form.ExtDateField({
fieldLabel: '至<font color=red>*</font>',
altFormats : "y-n-j|Y-m-d|Y-n-j|y-m-j|y-n-d|y-m-d|Y-n-d|Y-m-j",
name: 'endDate',
format:'Y-m-d',
width:120,
allowBlank:false,
value: new Date(),
anchor:'100%'
})
};
1 -- 其中的开始时间 从 beginDate 的"value:new Date(new Date().getTime() - 1000 * 60 * 60 * 24 * 7),”
表示当前日期减去7天
或者用 value: new Date().add(Date.DAY,-30);
2 --用 var beginDate =this.mainForm.getForm().findField("beginDate").getValue().dateFormat('Y-m-d');获得 如2012 -7-12格式的日期数据
又如
this.ckDate=function(){
//alert(this.formField);
var v1 = Ext.getCmp("beginDate").getValue();
var v2 = Ext.getCmp("endDate").getValue();
if(v1=="" || v2=="") return true;
return v2 > v1;
},
beginDate: new Ext.form.ExtDateField({
fieldLabel: '从',
name: 'beginDate',
id:'beginDate',
width:120,
format:'Y-m-d',
value:new Date(new Date().getTime() - 1000 * 60 * 60 * 24 * 7),
allowBlank: false,
[b] validator:this.ckDate,[/b] anchor:'100%',
inputFormat:'Y-m-d'
}),
endDate : new Ext.form.ExtDateField({
fieldLabel: '至<font color=red>*</font>',
altFormats : "y-n-j|Y-m-d|Y-n-j|y-m-j|y-n-d|y-m-d|Y-n-d|Y-m-j",
name: 'endDate',
id:'endDate',
format:'Y-m-d',
[b]validator:this.ckDate,[/b] width:120,
allowBlank:false,
value: new Date(),
anchor:'100%'
})
实现验证结束时间比开始时间大才通过