ExtJS 中组件的事件处理跟上面相似,看下面的代码:
<script>
function a(){
alert('some thing');
}
Ext.onReady(function(){
Ext.get("btnAlert").addListener("click",a);
});
</script>
<input id="btnAlert" type="button" value="alert 框" />
#5* 得到一个与页面中按钮 *关联的 ##6对象,可以直
接调
用该对象上的 J方法来给对象添加事件,同样实现前面的效果。在调用
J
方法的代码中,第一个参数表示事件名称,第二个参数表示事件处理器或整个响应函数。
ExtJS 支持事件队列,可以往对象的某一个事件中添加多个事件响应函数,看下面的代码:
Ext.onReady(function(){
Ext.get("btnAlert").on("click",a);
Ext.get("btnAlert").on("click",a);
});
J方法的另外一个简写形式是 ,由于调用了两次 J方法,因此当
点
击按钮的时候会弹出两次信息。
当然,ExtJS 还支持事件延迟处理或事件处理缓存等功能,比如下面的代码:
Ext.onReady(function(){
Ext.get("btnAlert").on("click",a,this,{delay:2000});
});
当然,在使用 #的事件时,我们一般是直接在控件上事件,每一个控件包含哪些事件,
在什么时候触发,触发时传递的参数等,在 #$%项目的文档中都有较为详细的说明。比
如对于所有的组件 Component,都包含一个 beforedestroy 事件,该事件会在 Ext
销毁这一个组件时触发,如果事件响应函数返回 false,则会取消组件的销毁操作。
#( !
//#0/!
1不能关闭的窗口251)442/1344
' &
/2 !
想关闭我,这是不可能的+ &
/ &
&
' &
// &' &