Extjs listener事件处理的参数问题

在使用extjs的控件的时候,免不了要给控件注册个事件,以达到在操作控件的时候触发一些处理的目的.

比如写个ComboBox,可以写一个选择一个下拉项时触发的事件select.

[javascript]

  1. var testComboBox = new Ext.form.ComboBox({  
  2.     listeners:{  
  3.         select:function(){  
  4.             Ext.Msg.alert(null,testComboBox.getValue());  
  5.         }  
  6.     }  
  7. })  

但其实事件的处理方法里是可以有参数来获取相关对象来避免绝对引用的,比如下面的方式:

[javascript]

  1. var testComboBox = new Ext.form.ComboBox({  
  2.     listeners:{  
  3.         select:function(combo,record,index){  
  4.             Ext.Msg.alert(null,combo.getValue());  
  5.         }  
  6.     }  
  7. })  

这种方式能给开发带来很大的方便.但是,都可以使用什么样的参数,应该从哪里查看呢?我在网络上找了好长时间都没有结果.网上有一份extjs api中文版的,里面也都没有提供事件处理方法的具体参数用法.后来还是在extjs的官网找到了比较全的文档资料.不仅给出了可以使用的参数,

可以根据自己的情况选择不同的版本.这样一来查询起来就快多了.

另外参数不是必须写全,从前向后把需要的写出来也有效.比如这个:

[javascript]

  1. var testComboBox = new Ext.form.ComboBox({  
  2.     listeners:{  
  3.         select:function(combo,record){  
  4.             Ext.Msg.alert(null,combo.getValue());  
  5.         }  
  6.     }  
  7. })  

但还是推荐把参数写完整,方便以后扩展.

标签