我的表格上有日期字段:
var intForm = new Ext.FormPanel({
width: 350,
autoHeight: true,
bodyStyle: 'padding: 10px 10px 10px 10px;',
labelWidth: 70,
defaults: {
anchor: '95%',
allowBlank: false,
msgTarget: 'side'
},items:[{
xtype:'datefield',
fieldLabel: 'Выберете дату',
name: 'intDate',
anchor:'80%',
maxValue: new Date(),
listeners:{
'change': function(this,newValue,oldValue){
alert('newValue');
}
}
}]
});
但是,当我开始申请时,我得到错误:
SyntaxError: missing formal parameter
'change': function(this,newValue,oldValue){
当我创建像这样的日期字段时,我无法使用监听器,我会使用变量来创建日期字段吗?
答案 0 :(得分:2)
您遇到语法错误,无法使用this
作为参数名称将其更改为field
或任何其他名称
var intForm = new Ext.FormPanel({
width : 350,
autoHeight : true,
bodyStyle : 'padding: 10px 10px 10px 10px;',
labelWidth : 70,
defaults : {
anchor : '95%',
allowBlank : false,
msgTarget : 'side'
},
items : [{
xtype : 'datefield',
fieldLabel : 'Выберете дату',
name : 'intDate',
anchor : '80%',
maxValue : new Date(),
listeners : {
'change' : function(field, newValue, oldValue) {
alert('newValue');
}
}
}]
});
答案 1 :(得分:1)
您无法使用this
作为参数名称,请使用其他内容,例如self
或me
。
'change': function(self,newValue,oldValue){