zoukankan      html  css  js  c++  java
  • Ext.form.ComboBox 中如何移除事件,如何添加事件,动态设置事件

    Ext.form.ComboBox 中如何移除事件,如何添加事件

    背景:
      希望Ext.form.ComboBox动态设置forceSelection属性,动态控制Combobox的可读可写状态,是否允许任意输入。
      但是ComboBox对象并没有setForceSelection()方法,不能通过对象直接设置forceSelection属性。
    	
    如:
        Ext.getCmp("shoukuanrenCombobox").setForceSelection(true);		// 方法报错,setForceSelection()方法不存在
    		
    目标:
      期望实现动态控制Ext.form.ComboBox的可读可写,是否允许任意输入。
    	
    解决:
      通过Ext源码,拿到on(),un()两个方法,通过on(),un()两个方法直接设置forceSelection属性对应的事件
    		on():
    			addListener: function (A, C, B, F) {
    		un():
    			removeListener: function (A, C, B) {
    			
    	代码如:
    		// 实现forceSelection = true属性,即添加"blur"事件
    		Ext.getCmp("shoukuanrenCombobox).on("blur", Ext.getCmp("shoukuanrenCombobox).doForce, Ext.getCmp(shoukuanrenCombobox));
    		Ext.getCmp("kaihuhangCombobox).on("blur", Ext.getCmp("kaihuhangCombobox).doForce, Ext.getCmp(kaihuhangCombobox));
    		// 实现forceSelection = false属性,即移除"blur"事件
    		Ext.getCmp("shoukuanrenCombobox).un("blur", Ext.getCmp("shoukuanrenCombobox).doForce, Ext.getCmp(shoukuanrenCombobox));
    		Ext.getCmp("kaihuhangCombobox).un("blur", Ext.getCmp("kaihuhangCombobox).doForce, Ext.getCmp(kaihuhangCombobox));
  • 相关阅读:
    23种设计模式
    (C# 基础) 接口
    (C#) Handling and Raising Events
    (C# 基础) 位运算
    (C#) 线程之 AutoResetEvent, EventHandle.
    (C#) 线程基础
    div在固定高的文字垂直居中
    滚动置顶
    jQuery给同一个元素两个点击事件
    (置顶)js实现超过页面一屏后,点击图标滚动到页面顶部top
  • 原文地址:https://www.cnblogs.com/qungmu/p/14659677.html
Copyright © 2011-2022 走看看