region:'center',
id:'content-panel',
xtype: 'tabpanel',
boder: false,
activeItem: 0,
items:[start]
这是显示详细内容的区域,start是在页面中预先定义好的一个tabpanel
var start = {
id : 'start',
title : '欢迎使用',
layout : 'fit',
bodyStyle : 'padding:25px',
html : '<img src="/wscm/main/pic/bg.jpg"/>'
};
var yylhcl = {
id : 'yylhcl',
title : '立户处理',
closable: true,
layout : 'fit',
bodyStyle : 'padding:25px',
html : '这是立户处理tabpanel '
};
var yycblr = {
id : 'yycblr',
title : '抄表录入',
closable: true,
layout : 'fit',
bodyStyle : 'padding:25px',
html : '这是抄表录入tabpanel '
};
//其它省略--------- 下面是点击node的事件
if (node.leaf && node.id != sn.id){
if(Ext.getCmp('content-panel').getItem(node.attributes.url)==null){
alert(node.attributes.url+'--'+'未创建');
Ext.getCmp('content-panel').add(node.attributes.url).show();
}else{
alert(node.attributes.url+'--'+'已创建');
Ext.getCmp('content-panel').setActiveTab(node.attributes.url);
};}}catch(e){}}
},
上述的alert(node.attributes.url+'--'+'未创建')可以显示node.attributes.url是yylhcl,可是这样处理就出错了,为什么呢?
如果我把Ext.getCmp('content-panel').add(node.attributes.url).show() 改为Ext.getCmp('content-panel').add(yylhcl).show() 这样就是正确的了,可是我想利用node.attributes.url来动态调用已经建好的那些tabpanel
id:'content-panel',
xtype: 'tabpanel',
boder: false,
activeItem: 0,
items:[start]
这是显示详细内容的区域,start是在页面中预先定义好的一个tabpanel
var start = {
id : 'start',
title : '欢迎使用',
layout : 'fit',
bodyStyle : 'padding:25px',
html : '<img src="/wscm/main/pic/bg.jpg"/>'
};
var yylhcl = {
id : 'yylhcl',
title : '立户处理',
closable: true,
layout : 'fit',
bodyStyle : 'padding:25px',
html : '这是立户处理tabpanel '
};
var yycblr = {
id : 'yycblr',
title : '抄表录入',
closable: true,
layout : 'fit',
bodyStyle : 'padding:25px',
html : '这是抄表录入tabpanel '
};
//其它省略--------- 下面是点击node的事件
if (node.leaf && node.id != sn.id){
if(Ext.getCmp('content-panel').getItem(node.attributes.url)==null){
alert(node.attributes.url+'--'+'未创建');
Ext.getCmp('content-panel').add(node.attributes.url).show();
}else{
alert(node.attributes.url+'--'+'已创建');
Ext.getCmp('content-panel').setActiveTab(node.attributes.url);
};}}catch(e){}}
},
上述的alert(node.attributes.url+'--'+'未创建')可以显示node.attributes.url是yylhcl,可是这样处理就出错了,为什么呢?
如果我把Ext.getCmp('content-panel').add(node.attributes.url).show() 改为Ext.getCmp('content-panel').add(yylhcl).show() 这样就是正确的了,可是我想利用node.attributes.url来动态调用已经建好的那些tabpanel
解决方案 »
- extjs gid如何动态显示scrollbar列
- 对联广告火狐上无法正常运行
- 寻求JS代码,实现把指定层显示在最上边,后面的主体变成不可更改
- ?
- div层跟踪对象。可以跟踪button,但是不能跟踪div对象。
- 新手提问:如何检查一个页面中是否含有<form>对象
- 谁能给个真正的动态添加行 删除行 并能保存数据到数据库的实例?
- (不懂)我有一个日期控件,在别人机器上可以用,而为什么我的机器上就打开不了?(程序如下)
- 在iframe如何实现记录下焦点光标的位置然后再恢复?
- 将含有单引号的参数传给一个JavaScript函数出错,请问如何处理?
- 讨论下,javascript遇到这种数据一致性问题是否有成熟的解决方案
- JavaScript代码怎么隐藏?避免页面另存为后,用记事本可以看到源代码
如何我才可以让返回的值与对象一样呢,也就是说返回的值正好是我预定义好的对象.
node.attributes.url是一个字符串吧
Ext.getCmp('content-panel').add(yylhcl) yylhcl是一个对象,你看是不是
你的思路可能不对
如var yylhcl = new Ext.Panel({
//var yylhcl = {
id : 'yylhcl',
title : '立户处理',
closable: true,
layout : 'fit',
bodyStyle : 'padding:25px',
html : '这是立户处理tabpanel ',
// listeners:{
// 'beforeclose':alert('good')
// }
});
如果这样然后再把这一句Ext.getCmp('content-panel').add(node.attributes.url).show(); 改为Ext.getCmp('content-panel').add(Ext.getCmp(node.attributes.url)).show()就可以了!