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
}