美好的一天,我进入了一个大型的EXT JS项目,不幸的是我在Ext js中完全不知道,我试图尽可能多地从tuts和例子中学习,但是我对这个基本问题感到震惊。
我有两个不同的日期选择器定义如下:
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'
}
}
}]
}
我已经成功定义了控制器,在那里我做了一个简单的" console.log()" datepicker传递给我的一切:
Ext.define('xxx.xxx.xxx.xxxxxxxSetupController', {
extend: 'Ext.app.ViewController',
alias: 'controller.investmentsetupcontroller',
checkDateInterval: function (data){
console.log("data: ", data);
}
});
这是按预期工作的。 唯一的问题是我在console.log中收到了一个完整的数据对象,我想应该有一个更简单的方法来获取两个选定的日期。我可以问你一些建议吗?我的目标是获取这两个日期,进行一些计算并用数据调用另一个函数。
提前感谢。
答案 0 :(得分:2)
要实现这一目标,您需要使用data.value
你的代码就像
checkDateInterval: function (data){
console.log("data: ", data.value);
}
此处还要检查小提琴。 Fiddle