在Extjs中,我想通过点击一个按钮,然后在一个TabPanel中加入一个Panel组件,请问怎么做? 200
补充一下问题,我首先有一个主页,里面有个TabPanel和一个按钮,我希望点击这个按钮来载入另外一个页面,而这个页面里面有个Panel,我现在需要的是的把另外一个页面载入...
补充一下问题,我首先有一个主页,里面有个TabPanel和一个按钮,我希望点击这个按钮来载入另外一个页面,而这个页面里面有个Panel,我现在需要的是的把另外一个页面载入到这个TabPanel页面里面,希望大神帮忙解答一下,谢谢
展开
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励10(财富值+成长值)+提问者悬赏200(财富值+成长值)
展开全部
var centerPanel = Ext.create('Ext.TabPanel', {
region: 'center',
deferredRender: false,
activeTab: 0,
items: []
})
var ftab = Ext.create('Ext.Panel', {
tpl: new Ext.XTemplate('<iframe style="width: 100%; height: 100%; border: 0;padding:4px 4px 4px 4px;" src="{url}"></iframe>'),
load: function (b) { this.update(this.tpl.apply(b)) }, clear: function () { this.update("") },
title: '首页',
autoScroll: true
});
ftab.load({ url: '<%=Url.Action("Welcome",new{ controller="Home"}) %>' });
centerPanel.add(ftab);
function trsel(view, record, item, index, e) {
if (record.raw.leaf) {
var tab = centerPanel.getComponent("tab" + record.raw.id); //获取tab对象
if (!tab) {//如果tab不存在,就创建并添加到centerPanel中
tab = Ext.create('Ext.Panel', {
tpl: new Ext.XTemplate('<iframe style="width: 100%; height: 100%; border: 0;padding:4px 4px 4px 4px;" src="{url}"></iframe>'),
load: function (b) { this.update(this.tpl.apply(b)) }, clear: function () { this.update("") },
id: "tab" + record.raw.id,
title: record.raw.text,
closable: true,
autoScroll: true
});
tab.load({ url: '/' + record.raw.menu_area + '/' + record.raw.menu_controller + '/' + record.raw.menu_action });
centerPanel.add(tab);
}
centerPanel.setActiveTab(tab); //设置显示当前面板
}
};
函数是点击菜单树时调用的。你自己调整一下,点按钮时调这个函数就可以。不过网上说用iframe不好,我也想看看有没有其他的方法
region: 'center',
deferredRender: false,
activeTab: 0,
items: []
})
var ftab = Ext.create('Ext.Panel', {
tpl: new Ext.XTemplate('<iframe style="width: 100%; height: 100%; border: 0;padding:4px 4px 4px 4px;" src="{url}"></iframe>'),
load: function (b) { this.update(this.tpl.apply(b)) }, clear: function () { this.update("") },
title: '首页',
autoScroll: true
});
ftab.load({ url: '<%=Url.Action("Welcome",new{ controller="Home"}) %>' });
centerPanel.add(ftab);
function trsel(view, record, item, index, e) {
if (record.raw.leaf) {
var tab = centerPanel.getComponent("tab" + record.raw.id); //获取tab对象
if (!tab) {//如果tab不存在,就创建并添加到centerPanel中
tab = Ext.create('Ext.Panel', {
tpl: new Ext.XTemplate('<iframe style="width: 100%; height: 100%; border: 0;padding:4px 4px 4px 4px;" src="{url}"></iframe>'),
load: function (b) { this.update(this.tpl.apply(b)) }, clear: function () { this.update("") },
id: "tab" + record.raw.id,
title: record.raw.text,
closable: true,
autoScroll: true
});
tab.load({ url: '/' + record.raw.menu_area + '/' + record.raw.menu_controller + '/' + record.raw.menu_action });
centerPanel.add(tab);
}
centerPanel.setActiveTab(tab); //设置显示当前面板
}
};
函数是点击菜单树时调用的。你自己调整一下,点按钮时调这个函数就可以。不过网上说用iframe不好,我也想看看有没有其他的方法
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询