这里是代码,我也想要onPaste事件而不是点击但没有工作
var mpan0 = new Ext.form.TextField({
name:'mpan[]' ,
value:0 ,
allowblank:false ,
enableKeyEvents:true ,
fieldLabel:'Mpan',
maxLength:2,
width:35
});
mpan0.addListener('click', function(){
alert( "amiy");
});
答案 0 :(得分:6)
Ext.form.TextField没有'click'事件。您可以在以下位置查看它支持的事件:
http://www.sencha.com/deploy/dev/docs/?class=Ext.form.TextField
我能想到的最接近你所追求的是'焦点'事件。
如果您确实必须有click事件,可以尝试将侦听器附加到field对象的基本DOM元素:
Ext.form.TextField({
listeners: {
afterrender: function( field ) {
field.getEl().on('click', function( event, el ) {
// do something on click
});
}
}
});
然而,我无法宣称会有多成功。
有关Ext.Element点击事件的文档可在以下网址找到:
答案 1 :(得分:2)
yourtextfield = new Ext.form.TextField({
id:'yourtextfield ',
readOnly : true,
listeners: {'render': function(cmp) {
cmp.getEl().on('click', function( event, el ) {
alert("You click text field");
});
}}
});
这很有效。
答案 2 :(得分:-3)
ExtJs使用on
,因此它应该是
mpan0.on("click", function(){
alert("amiy");
});
但你也可以声明性地添加它
var mpan0 = new Ext.form.TextField({
name:'mpan[]' ,
value:0 ,
allowblank:false ,
enableKeyEvents:true ,
fieldLabel:'Mpan',
maxLength:2,
width:35,
listeners: {
"click": function() {
alert("amiy");
}
}
});