EXTJS4 零散知识点

1.需求:在页面加载完成后,html代码生成后做一些操作
afterRender方法 此方法可能不能直接获得html的dom
暂时找到 boxready监听 可以实现获得html的dom
2.添加简单的遮罩
me.body.mask(“遮罩显示”);
me.body.unmask();
3.设置不可用(可用)
me.setDisabled(true/false);
4.combox下拉框获得当前选中的数据行(不只是显示的文字和隐藏的id,其他的数据也能获得,就是store中的record)
combox.displayTplData[0];
5.border布局下方覆盖左右2边的问题
设置下方的 weight属性为-100
6.组件的焦点事件
如果想要触发要先写Ext.FocusManager.enable();这句话
原因:

FocusManager负责在全局范围:
1.管理组件焦点
2.提供基本的键盘导航功能
3.(可选的) 为获得焦点的组件提供焦点环或者焦点框的视觉提示
激活FocusManager, 只需调用Ext.FocusManager.enable();。反过来, 再调用Ext.FocusManager.disable();可取消激活FocusManager。 FocusManager默认不可用。
传递true或者{focusFrame: true}给enable可以启用可选的焦点框。
FocusManager的另外一个特点是提供基本的在Ext.container.Container范围内的键盘焦点 导航。 和子组件Ext.Component之间的导航。

7.弹出提示信息之后文本框获得焦点

Ext.Msg.show({
	title: "错误信息",
	msg: "提示信息",
	icon: Ext.Msg.ERROR,
	modal: true,
	buttons: Ext.Msg.YES,
	fn: function () {
	    textfield.focus(); //组件获得焦点
    }
});

8 可以根据输入的简称自动匹配数据的下拉框(只验证了本地数据)

{
            xtype: 'combo',
            width: 100,
            
            store: Ext.create('Ext.data.Store', {
                fields: ['abbr', 'name'],
                data: [
                    { "abbr": "AL", "name": "bsabama" },
                    { "abbr": "AK", "name": "bdaska" },
                    { "abbr": "AZ", "name": "bfizona" }
                ]
            }),
            queryMode: 'local',  //本地查询,remote为向后台发送请求查询
            displayField: 'name',
            valueField: 'abbr',
            listeners: {
            //这个监听是主要的
                beforequery: function (e) {
                    var combo = e.combo;
                    combo.collapse();
                    if (!e.forceAll) {
                        var value = e.query;  //这是输入的简称
                        if (value != null && value != '') {
                            console.log(value);
                            //这里让store去过滤数据
                            combo.store.filterBy(function (record, id) {
                                var text = record.get('abbr').toLowerCase(); 
                                // 用自己的过滤规则,如写正则式
                                return (text.indexOf(value.toLowerCase()) != -1); //返回true就会显示这条记录
                            });

                        } else {
                            combo.store.clearFilter();
                        }
                        combo.onLoad();//不加第一次会显示不出来   
                        combo.expand();
                        return false;
                    }
                },
                //通过select事件拿到选中的数据
                select: function (m,r) {
                    console.log(m,r);
                }
            }
        }

9.grid列表多选列表全选按钮无法清除勾选的问题

var hd_checker = me.getEl().select('div.x-unselectable');
        if (hd_checker.hasCls('x-grid-hd-checker-on')) {
            hd_checker.removeCls('x-grid-hd-checker-on');
        }
        me.getSelectionModel().clearSelections();
        me.getView().refresh();
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值