• (转)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);  //直接使用实例

  • 相关阅读:
    [转载]datatable中只取前7条数据
    [转载]序列化的作用
    [转载]ASP.NET几种清除页面缓存的方法
    Page_Init()和page_load()区别
    [转载]回调函数
    编程规约
    语法知识【Python核心编程】
    Web基础概念扫盲
    【Tomcat源码调试-1】环境搭建(MyEclipse)
    小希的数表题解
  • 原文地址:https://www.cnblogs.com/zhwl/p/3837040.html
Copyright © 2020-2023  润新知