先 贴上代码
<script type="text/javascript">
Ext.QuickTips.init();// 浮动信息提示
Ext.BLANK_IMAGE_URL = '/erp/js/ext-3.0.0/resources/images/default/s.gif';// 替换图片文件地址为本地
//顶部工具条
var topView=new Ext.Panel({
title:"",
region:"north",
height:80,
html:'<iframe scrolling="auto" frameborder="0" width="100%" height="100%" src="/erp/home/navigation.jsp"></iframe>'
})
//左边功能树
var menuTree = new Ext.tree.TreePanel({
region : 'west',
title : '功能菜单',
width : 180,
minSize : 150,
maxSize : 200,
bodyStyle:'background-image:url("/erp/images/bg2.gif")',
frame : true,// 美化界面
enableDD : false,// 是否支持拖拽效果
animate : true, // 动画效果
split : true, //分隔条
border : false, // 边框
autoScroll : true,
autoHeight : false,
collapsible : true,//分割线可移动
rootVisable : false
});
// 异步加载根节点
var rootnode = new Ext.tree.AsyncTreeNode({
id : '1', //设置顶级节点ID
text : 'ERP系统',
draggable : false,// 根节点不容许拖动
expanded : true
});
// 为tree设置根节点
menuTree.setRootNode(rootnode);
//响应加载前事件,传递node参数
menuTree.on('beforeload', function(node) {
menuTree.loader.dataUrl = '/erp/home/treeDate.jsp?parentId=' + node.id; // 定义子节点的Loader
});
// 增加鼠标单击事件
menuTree.on('click', treeClick);
//右边功能面板区
var contentPanel = new Ext.TabPanel({
region:'center',
enableTabScroll:true,
activeTab:0,
items:[{
id:'homePage',
title:'首页',
closable:true, //通过html载入目标页
html:'<iframe scrolling="auto" frameborder="0" width="100%" height="100%" src="/erp/home/bodyOffice.jsp"></iframe>'
}]
});
Ext.onReady(function(){
new Ext.Viewport({
layout:'border', //使用border布局
defaults:{activeItem:0},
items:[topView,menuTree, contentPanel]
});
});
//设置树的点击事件
function treeClick(node, e) {
var link = node.attributes.href;
targetType = node.attributes.targetwindow;
alert(node.hrefTarget);
if(targetType=="mainFrame"){
alert(targetType);
if (node.isLeaf()) {
e.stopEvent();
var n = contentPanel.getComponent(node.id);
if (!n) {
var n = contentPanel.add({
'id':node.id,
'title':node.text,
closable:true, //通过html载入目标页
html:'<iframe scrolling="auto" frameborder="0" width="100%" height="100%" src='+link+' ></iframe>'
});
}
contentPanel.setActiveTab(n);
}
}else{
window.open(link,'_blank');
return;
}
}
</script>在执行function treeClick(node, e) 遇到非targetType!="mainFrame" 弹出新的窗口 为什么执行window。open时候,新窗口是弹出来了,但是当前页面也变成了新窗口的链接,就出现了2 个一样的窗口,怎么让当前页面不变,EXT新手求大家帮帮忙啊 谢谢了
<script type="text/javascript">
Ext.QuickTips.init();// 浮动信息提示
Ext.BLANK_IMAGE_URL = '/erp/js/ext-3.0.0/resources/images/default/s.gif';// 替换图片文件地址为本地
//顶部工具条
var topView=new Ext.Panel({
title:"",
region:"north",
height:80,
html:'<iframe scrolling="auto" frameborder="0" width="100%" height="100%" src="/erp/home/navigation.jsp"></iframe>'
})
//左边功能树
var menuTree = new Ext.tree.TreePanel({
region : 'west',
title : '功能菜单',
width : 180,
minSize : 150,
maxSize : 200,
bodyStyle:'background-image:url("/erp/images/bg2.gif")',
frame : true,// 美化界面
enableDD : false,// 是否支持拖拽效果
animate : true, // 动画效果
split : true, //分隔条
border : false, // 边框
autoScroll : true,
autoHeight : false,
collapsible : true,//分割线可移动
rootVisable : false
});
// 异步加载根节点
var rootnode = new Ext.tree.AsyncTreeNode({
id : '1', //设置顶级节点ID
text : 'ERP系统',
draggable : false,// 根节点不容许拖动
expanded : true
});
// 为tree设置根节点
menuTree.setRootNode(rootnode);
//响应加载前事件,传递node参数
menuTree.on('beforeload', function(node) {
menuTree.loader.dataUrl = '/erp/home/treeDate.jsp?parentId=' + node.id; // 定义子节点的Loader
});
// 增加鼠标单击事件
menuTree.on('click', treeClick);
//右边功能面板区
var contentPanel = new Ext.TabPanel({
region:'center',
enableTabScroll:true,
activeTab:0,
items:[{
id:'homePage',
title:'首页',
closable:true, //通过html载入目标页
html:'<iframe scrolling="auto" frameborder="0" width="100%" height="100%" src="/erp/home/bodyOffice.jsp"></iframe>'
}]
});
Ext.onReady(function(){
new Ext.Viewport({
layout:'border', //使用border布局
defaults:{activeItem:0},
items:[topView,menuTree, contentPanel]
});
});
//设置树的点击事件
function treeClick(node, e) {
var link = node.attributes.href;
targetType = node.attributes.targetwindow;
alert(node.hrefTarget);
if(targetType=="mainFrame"){
alert(targetType);
if (node.isLeaf()) {
e.stopEvent();
var n = contentPanel.getComponent(node.id);
if (!n) {
var n = contentPanel.add({
'id':node.id,
'title':node.text,
closable:true, //通过html载入目标页
html:'<iframe scrolling="auto" frameborder="0" width="100%" height="100%" src='+link+' ></iframe>'
});
}
contentPanel.setActiveTab(n);
}
}else{
window.open(link,'_blank');
return;
}
}
</script>在执行function treeClick(node, e) 遇到非targetType!="mainFrame" 弹出新的窗口 为什么执行window。open时候,新窗口是弹出来了,但是当前页面也变成了新窗口的链接,就出现了2 个一样的窗口,怎么让当前页面不变,EXT新手求大家帮帮忙啊 谢谢了
解决方案 »
- 动态改css
- 如何让Javascript不要自动四舍五入?
- 求段JS验证只能输入数字(且只能为整数)代码
- 跑马灯(从左往右)
- 一个javascript的小问题.高手请来拿分了.~~~~~~~~~~~~~~~~~~
- 如何优化函数中的多个if else语句让代码简洁一些?
- js获取URL参数,解析字符串问题,大家来帮忙,很简单,偶太菜!!
- 没分了,但是还得问,请大家帮忙:怎样自动检测如果当前页没有被设置为首页,则在关闭ie的时候自动弹出提示窗口,怎么作?
- 请问如何捕捉鼠标点击事件
- 中午刚结的帖子遇到了新问题,(function()中的if语句不起作用!!)(在线)
- 高手请进 下拉框的问题
- 文本框背景色慢慢淡出
在取的时候也是node.attributes._href这样试试