Ext 初学时遇到的问题

1、checkbox不显示

图片文件不存在、资源文件中没有放checkbox的图片

2、combobox回车查询

 enableKeyEvents:true,
                          listeners: {
                            keydown: function(text,e,obj){
                                if(e.getKey()==e.ENTER){
                                SelectData(Ext.get('txtappName'));
                              }
                            },
                            collapse: function(cmb,newValue,oldValue,eOpts ){ 
                               this.focus();
                             }   
                        }

3、Event为空或者不是对象

第一种可能是  用了模板页


第二种可能是同时引用了:
<script language="javascript" type="text/javascript" src="../../Scripts/Ext/ext-all.js"></script>
    <script language="javascript" type="text/javascript" src="../../Scripts/Ext/bootstrap.js"></script>




第三种可能是
items中最后一项多了个逗号


4、Ext  combobox store中有数据  但显示不出来

model放到创建Combobox的后面就会显示不出来


5、Ext Grid 中显示RadioGroup

renderer:function(){return '<input type="radio" value="aaa" align="center" name="isOnename" id="isOneid" ><label for="isOneid">aa</label>   <input type="radio"  align="right" name="isOnename" id="isOneid1" ><label for="isOneid1">bb</label>';},


6、Ext.fly(...)为空或不是对象

在使用grid展示列表时,ie8中点击翻页按钮title消失,然后不能翻页,firefox中正常显示,后来ie中提示“Ext.fly(...)为空或不是对象”这个错误,经查,是在init页面中引入了Ext.QuickTips.init();这句,删除后显示正常。


解决方案,删除Ext.QuickTips.init();


第二种解决方案:使各个页面的jsp、html头文件dtd等描述相同,尤其是html的头部标识


7、母版页用iframe打开tab,在tab页中获取

母版页

   <script type="text/javascript">
        Ext.require(['*']);

        Ext.onReady(function () {
            if (Ext.isIE) {
                Ext.enableGarbageCollector = false;
            }
           // debugger;
            Ext.QuickTips.init();

            Ext.state.Manager.setProvider(Ext.create('Ext.state.CookieProvider'));

            //定义模型
            Ext.regModel("MenuTree", {
                fields: [
                { name: 'menuId', type: 'string' },
                { name: 'menuName', type: 'string' },
                { script: 'menuLevel', type: 'string' },
                { name: 'menuRefId', type: 'string' },
                { name: 'menuParentId', type: 'string' },
                { script: 'menuUrl', type: 'string' },
                { script: 'id', type: 'string' }
                ]
            });
            //定义store
            var menuTreeStore = new Ext.data.TreeStore({
                model: 'MenuTree',
                nodeParam: 'id',
                proxy: {
                    type: 'ajax',
                    url: '@Url.Action("GetMenuTreeStore", "Index")',
                    reader: 'json'
                },
                autoLoad: true,
                defaultRootId: '-1_^0^'
            }); //store end


            var menuTree = Ext.create('Ext.tree.Panel', {
                //                title: '菜单',
                //renderTo: 'MenuTree',
                id: 'menuTreeForTran',
                width: 300,
                height: 600,
                hideHeaders: true,
                tdCls: 'treeFontSize',
                columns: [
                {
                    xtype: 'treecolumn',
                    //text:'菜单编号',
                    dataIndex: 'menuId',
                    hidden: true,
                    menuDisabled: true,
                    sortable: false
                },
                {
                    xtype: 'treecolumn',
                    //text: '菜单名称',
                    text: '@Html.GetLocalText("WebMasterMenuName");',
                    dataIndex: 'menuName',
                    renderer: function (val) {
                        return "<span style='font-size:13px;font-weight: bold;font-family:Arial,Verdana,Sans-serif; '>" + val + "</span>";
                    },
                    width: 300,
                    menuDisabled: true,
                    sortable: false,
                    style: {
                        marginBottom: '10px',
                        color: 'red'
                    }
                },
                {
                    xtype: 'treecolumn',
                    //text: '层级',
                    hidden: true,
                    dataIndex: 'menuLevel',
                    menuDisabled: true,
                    sortable: false
                },
                {
                    xtype: 'treecolumn',
                    //text: '关联编号',
                    hidden: true,
                    dataIndex: 'menuRefId',
                    menuDisabled: true,
                    sortable: false
                },
                {
                    xtype: 'treecolumn',
                    //text: '父节点编号',
                    hidden: true,
                    dataIndex: 'menuParentId',
                    menuDisabled: true,
                    sortable: false
                },
                {
                    xtype: 'treecolumn',
                    //text: '指向连接',
                    hidden: true,
                    dataIndex: 'menuUrl',
                    menuDisabled: true,
                    sortable: false
                },
                {
                    xtype: 'treecolumn',
                    hidden: true,
                    dataIndex: 'id',
                    menuDisabled: true,
                    sortable: false
                }
                ],
                store: menuTreeStore,
                rootVisible: false,
                listeners: {
                    itemclick: function (view, record, item, index, e, eOpts) {
                       // debugger;
                        if (record == null)
                            return;
                        var nextMenuId = "";
                        if (record.parentNode != null) {
                            if (record.parentNode.childNodes.length > 0) {
                                for (var i = 0; i < record.parentNode.childNodes.length; i++) {
                                    if (record.parentNode.childNodes[i].raw.menuId == record.raw.menuId && i != (record.parentNode.childNodes.length - 1)) {
                                        nextMenuId = record.parentNode.childNodes[i + 1].raw.menuId;
                                        break;
                                    }
                                }
                            }
                        }
                        if (record.raw.menuUrl == null && record.raw.menuUrl != "")
                            return;
                        var tab = Ext.getCmp(record.raw.menuId);
                        var level = record.raw.menuLevel;
                        if (tab == null) {
                            masterWorkspaceTab.add({
                                frame: true,
                                id: record.raw.menuId,
                                title: record.raw.menuName,
                                closable: true,
                                html: '<iframe src="' + record.raw.menuUrl + "?appId=" + record.raw.menuRefId + "&menuIdForNewTab=" + record.raw.menuId + "&nextTabId=" + nextMenuId + '" height="100%" width="100%" ></iframe>'
                            }).show();
                        }
                        else {
                            tab.close();
                            masterWorkspaceTab.add({
                                frame: true,
                                id: record.raw.menuId,
                                title: record.raw.menuName,
                                closable: true,
                                html: '<iframe src="' + record.raw.menuUrl + "?appId=" + record.raw.menuRefId + "&menuIdForNewTab=" + record.raw.menuId + "&nextTabId=" + nextMenuId + '" height="100%" width="100%" ></iframe>'
                            }).show();
                        }
                    }
                }

            }); //end create    

            var masterWorkspaceTab = Ext.create('Ext.tab.Panel', {
                id: 'tabMain'
            });


            var masterViewport = Ext.create('Ext.Viewport', {
                //title: "Viewport",
                layout: 'border',
                items: [{
                    region: 'west',
                    stateId: 'navigation-panel',
                    //title: '菜单',
                    title: '@Html.GetLocalText("WebMasterMenu")',
                    split: true,
                    width: 300,
                    minSize: 300,
                    maxSize: 300,
                    tools: [
                    {
                        id: 'refresh',
                        type: 'refresh',
                        handler: function () {
                            menuTreeStore.getRootNode().removeAll();
                            menuTreeStore.load();
                        }
                    }
                    ],
                    collapsible: true,
                    animCollapse: true,
                    margins: '5 0 5 5',
                    cmargins: '35 5 5 5',
                    layout: 'fit',
                    //                    layoutConfig: {
                    //                        animate: true
                    //                    },
                    items: [menuTree]
                },
                Ext.create('Ext.Component', {
                    region: 'north',
                    height: 50, // give north and south regions a height
                    autoEl: {
                        tag: 'div',
                        html: "<H1 style='font-size:28pt'>Enterprise Data Architect</H1>"
                    }
                }), {
                    region: 'center',
                    margins: '5 5 5 0',
                    autoScroll: true,
                    layout: 'fit',
                    items: masterWorkspaceTab
                }]
            });
        });
    </script>

在tab页中获取tabPanel:

function moveEDSNextStep(tip,msg,menuIdForNewTab,nextTabId,urlParams,thisTabMain,tabFlag,thisTabIndex,action,title) {
 Ext.MessageBox.confirm(tip, msg, function (button, text) {
                            if (button == "yes") {
                                for (var i = 0; i < thisTabMain.items.items.length; i++) {
                                    if (thisTabMain.items.items[i].id == nextTabId) {
                                        tabFlag = true;
                                        thisTabIndex = i;
                                    }
                                }
                                if (tabFlag) {
                                    if (action.result != null) { Ext.Msg.alert(tip, action.result.msg); }
                                    window.parent.Ext.getCmp('tabMain').add({
                                        frame: true,
                                        id: nextTabId,
                                        title: title,
                                        closable: true,
                                        html: '<iframe src="' + urlParams + '",  height="100%" width="100%" ></iframe>'
                                    }).show();
                                    thisTabMain.items.items[thisTabIndex].close();
                                }
                                else {
                                    if (action.result != null) { Ext.Msg.alert(tip, action.result.msg); }
                                    window.parent.Ext.getCmp('tabMain').add({
                                        frame: true,
                                        id: nextTabId,
                                        title: title,
                                        closable: true,
                                        html: '<iframe src="' + urlParams + '",  height="100%" width="100%" ></iframe>'
                                    }).show();
                                }

                            }
                           var oldTab= parent.window.Ext.getCmp(menuIdForNewTab);
                            if(oldTab!=undefined)
                            oldTab.close();

                        }); //confirm end
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值