大家好
我正在使用两个定义如下的日期选择器进行日期范围选择:
items: {
xtype: 'panel',
layout: 'hbox',
items: [{
title: 'FROM',
margin: '5',
items: {
xtype: 'datepicker',
start: true,
reference: 'startDate',
maxDate: new Date(),
maxText: 'Future dates are not available',
bind: {
value: '{startDate}'
},
showToday: false,
listeners: {
select: 'checkDateInterval'
}
}
}, {
title: 'TO',
margin: '5',
items: {
xtype: 'datepicker',
start: false,
reference: 'endDate',
bind: {
value: '{endDate}'
},
maxDate: new Date(),
showToday: false,
listeners: {
select: 'checkDateInterval'
}
}
}]
}
我想要实现的是将第二个日期选择器的minDate设置为第一个日期选择器中的日期,因此用户一旦选择了第一个日期,就无法选择过去的日期。
我还想在用户在第一个日期选择器上选择一个日期后重置第二个日期。
如何指向第一个元素上选择的日期?
最佳答案
用这个:
{
xtype:'datefield',
隐藏:正确,
宽度:“ 17%”,
可编辑:false,
tabIndex:6
id:“开始”,
格式:“ Y-m-d”,
minDate:新的Date(),
名称:“ start_date”,
onTriggerClick:function(){
var dt = this;
var due = Ext.getCmp('Due');
dt.setMaxValue(due.value);
Ext.form.DateField.prototype.onTriggerClick.apply(dt,arguments);
},
听众:{
更改:function(dp,date){
var due = Ext.getCmp('Due');
due.setValue(date);
}
}
},{
xtype:'datefield',
隐藏:正确,
id:“到期”,
可编辑:false,
tabIndex:8
宽度:“ 17%”,
格式:“ Y-m-d”,
名称:“ due_date”,
onTriggerClick:function(){
var dt = this;
dt.setMinValue(Ext.getCmp('start')。value);
Ext.form.DateField.prototype.onTriggerClick.apply(dt,arguments);
},
听众:{
更改:function(dp,date){
var start = Ext.getCmp('start');
start.setValue(date);
}
}
}