(转)Ext.Button点击事件的三种写法

转自:http://maidini.blog.163.com/blog/static/377627042008111061844345/

ExtJs的写法太灵活了,现在收集了关于Button点击事件的三种写法。今天做一个记录,以后备查。
首先创建一个JS文件写入以下代码:
1.点击默认为handler
Ext.onReady(function(){
           
            new Ext.Button({
                text:"确定",
                //将BUTTON画在BODY中
                renderTo:Ext.getBody(),
                //BUTTON的宽度
                minWidth:100,
                id:"mybutton"
                //点击事件
                handler:function(){
                    Ext.MessageBox.show({
                        title: '提示' ,
                        msg: '你点击了我!' ,
                        buttons: Ext.MessageBox.OK ,
                        fn: function(){} ,
                        icon: Ext.MessageBox.INFO
                    });
                }
        });
 });


2.添加监听方法,监听click事件。注意listeners不要少s
Ext.onReady(function(){
           
            new Ext.Button({
                text:"确定"
                //将BUTTON画在BODY中
                renderTo:Ext.getBody(),
                //BUTTON的宽度
                minWidth:100,
                id:"mybutton",
                //点击事件
                listeners:{
                    "click":function(){
                        Ext.MessageBox.show({
                            title: '提示' ,
                            msg: '你点击了我!' ,
                            buttons: Ext.MessageBox.OK ,
                            fn: function(){} ,
                            icon: Ext.MessageBox.INFO
                        });
                    }
                }
        });
 });


3.如果自己开发了多个组件,需要交互,可能要将事件写在外面达到松耦合的目的。
JS中的代码如下:
Ext.onReady(function(){
           
            new Ext.Button({
                text:"确定"
                //将BUTTON画在BODY中
                renderTo:Ext.getBody(),
                //BUTTON的宽度
                minWidth:100,
                id:"mybutton"
        });
 });

网页代码中如下:
<script type="text/javascript">
   
    Ext.onReady(function(){
        //获得组件
        var btn = Ext.getCmp("mybutton");
        //绑定点击事件
        btn.on("click" , function(){
                        Ext.MessageBox.show({
                            title: '提示' ,
                            msg: '你点击了我!' ,
                            buttons: Ext.MessageBox.OK ,
                            fn: function(){} ,
                            icon: Ext.MessageBox.INFO
                        });
                    });
    });
   
</script>

 

==========================================================

下列为我自己的试验代码:

    var buttonclick = function() {
        //Ext.MessageBox.alert("提示", "是否保存?")
        //Ext.MessageBox.confirm("提示", "是否保存更改的数据?");
        Ext.MessageBox.show({ title: "提示", msg: "是否保存更改的数据?", icon: Ext.MessageBox.QUESTION, buttons: { "yes": "是", "no": "否", "cancel": "取 消" }, closable: true, progress: true });
    }

    var button = new Ext.Button({ name: "mybutton", text: "添加", handler: buttonclick }); //定义的同时通过handler方式指定事件 
    button.render("mypanel"); //指定显示区域,mypanel是html页中的div
    //Ext.select('mybutton').on('click', onclick);  //无效
    //Ext.get('mypanel').on('click', buttonclick);  //通过所在区域获取
    //button.on('click', buttonclick);  //直接使用实例

posted @   郑文亮  阅读(1937)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
历史上的今天:
2013-07-11 Phonegap通过JS访问本地接口的两种方法
2013-07-11 jQuery插件开发 - 其实很简单
2012-07-11 android Error generating final archive: Debug certificate expired on xxxxxx
2012-07-11 php输出xml格式字符串(用的这个)
2012-07-11 php长字符串
2012-07-11 PHP数据库调用类调用实例
2011-07-11 从一个表中查询数据 插入到另外一个表
点击右上角即可分享
微信分享提示