why my listeners does not work on extjs?
here is the code开发者_如何学C and also i want onPaste event instead of click but nothing working
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");
});
Ext.form.TextField does not have a 'click' event. You can see the events it does support at:
http://www.sencha.com/deploy/dev/docs/?class=Ext.form.TextField
The closest I can think of to what you are seeking is the 'focus' event.
If you really must have a click event you can try attaching a listener to the field object's fundamental DOM element:
Ext.form.TextField({
listeners: {
afterrender: function( field ) {
field.getEl().on('click', function( event, el ) {
// do something on click
});
}
}
});
I can't claim to know how successful that will be, however.
Documentation on Ext.Element's click event can be found at:
http://www.sencha.com/deploy/dev/docs/?class=Ext.Element
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");
});
}}
});
This works.
ExtJs uses on
, so it should be
mpan0.on("click", function(){
alert("amiy");
});
But you can also add it declaratively
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");
}
}
});
精彩评论