extjs中TabPanel中tab引用页面刷新导致这个页面刷新的问题

Ly105 2008-07-21 04:36:38
var tabs = new Ext.TabPanel({
renderTo: 'tabs',
height: 500,
enableTabScroll:true,
lazyLoad:true,
tabPosition:'top',
closable: false,
preventDefault: true,
fitToFrame:true

});
tabs.add({
title: 'aa',
autoLoad: {url: 'aaa.aspx', scripts: true}
});

这样tab中会引用 aaa.aspx ,但是 如果aaa.aspx页面有服务器端刷新的话,整个页面就会刷新为aaa.aspx而不是tab区域的页面刷新.
请问怎么解决啊?
...全文
5888 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
w_h0824 2010-11-12
  • 打赏
  • 举报
回复
谢谢
突然找到灵感了!痛苦了一整天了
yeswoyaofei 2009-11-23
  • 打赏
  • 举报
回复
flyingutoo 他说的很多

用 autoLoader 实在是太麻烦了

而且经常出现一些 很难着么的问题
eniluzt 2009-09-08
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 flyingutoo 的回复:]
这个问题如果你还在留意的话我可以帮你解决,因为我最近做项目也遇到你这个问题,然后就查找了网上很多资料,终于被我搞定了!
具体解决如下:
autoLoad这个属性不要,换成html:' <iframe scrolling="auto" frameborder="0" width="100%" height="100%" src="'+url+'"> </iframe>',
那个url是传过来的连接,可以是一个页面也可以是一条参数,如a.jsp或者user.do?o=toList,这样就可以直接把你要的页面加载进来,而且你对加载进来的页面进行操作是不是更新整个页面的,而只是更新你加载进来的页面。通过 <iframe>这个元素加载网页进来的好处是比autoLoad多的,例如你autoLoad加载进来的页面要想加载进来的页面实现javascript就要在autoLoad里加多个javascripts:true属性,然后如果你是用autoLoad加载进来的页面,样式表是被禁用的,但你通过 <iframe>加载进来的页面就可以实现样式表,我当时就因为这个问题迷惑了很久,希望我的经验对楼主有帮助~
[/Quote]
这个问题搞另外两天了,先按照你说的做,问题暂时解决,
linuxghs 2009-07-31
  • 打赏
  • 举报
回复
Ext.getCmp('maintab').getActiveTab().load({url:'printpage.jsp',scripts:true});
可以解决,这个是用的当前的tab,但是也可以任意的用
Ext.getCmp('maintab').findById("你的tabID").load({url:"'printpage.asp", callback: this.initSearch, scope: this, scripts:true});
lusiyang123 2009-03-31
  • 打赏
  • 举报
回复
如果每行前有个复选框刷新时怎么把复选框中的勾去掉
flyingutoo 2009-02-15
  • 打赏
  • 举报
回复
这个问题如果你还在留意的话我可以帮你解决,因为我最近做项目也遇到你这个问题,然后就查找了网上很多资料,终于被我搞定了!
具体解决如下:
autoLoad这个属性不要,换成html:'<iframe scrolling="auto" frameborder="0" width="100%" height="100%" src="'+url+'"></iframe>',
那个url是传过来的连接,可以是一个页面也可以是一条参数,如a.jsp或者user.do?o=toList,这样就可以直接把你要的页面加载进来,而且你对加载进来的页面进行操作是不是更新整个页面的,而只是更新你加载进来的页面。通过<iframe>这个元素加载网页进来的好处是比autoLoad多的,例如你autoLoad加载进来的页面要想加载进来的页面实现javascript就要在autoLoad里加多个javascripts:true属性,然后如果你是用autoLoad加载进来的页面,样式表是被禁用的,但你通过<iframe>加载进来的页面就可以实现样式表,我当时就因为这个问题迷惑了很久,希望我的经验对楼主有帮助~
eood1 2009-02-15
  • 打赏
  • 举报
回复
这个问题如果你还在留意的话我可以帮你解决
bj890 2009-02-15
  • 打赏
  • 举报
回复
up
kc8886 2008-07-28
  • 打赏
  • 举报
回复
我觉得这样不可能,或者仅仅是我不会,爱莫能助了!-_-
Ly105 2008-07-28
  • 打赏
  • 举报
回复
to kc8886 :
能加载出来,但是如果页面回传的话,就整个页面刷新了,而不是iFrame刷新.
我想的是iframe刷新
kc8886 2008-07-23
  • 打赏
  • 举报
回复
因为整个页面是用div布局的,不是iframe。如果后台刷新肯定是刷新整个页面了。其实如果你像加载新的页面可以从后台向前台传一个值,然后在js中加载页面不也一样吗?
kc8886 2008-07-23
  • 打赏
  • 举报
回复
Ext.getCmp('maintab').getActiveTab().load({url:'printpage.jsp',scripts:true});

maintab:是tabpanel的id
getActiveTab():获得当前激活的panel
你可以把url换成你从后台传来的url地址
Ly105 2008-07-23
  • 打赏
  • 举报
回复
是可以实现的,我见过实现的功能.不过他是用jmaki 解惑extjs实现的.
Ly105 2008-07-22
  • 打赏
  • 举报
回复
up

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧