weixin_42318215 2009-09-03 16:45
浏览 557
已采纳

请问如何实现点击按钮刷新已打开页面的功能

用ExtJs实现如下:

A.jsp中点击“显示”按钮弹出B.jsp窗口,若在没有关闭B页面前提下再次点击A的“显示”按钮实现B页面整个刷新并自动切换到B页面

如何实现??

我写的代码

[code="java"]
var tabPanel = window.parent.tabs;
var lp = tabPanel.getComponent(id);

if(!np){
tabPanel.add({
id: id,
title: name,
html: '',
closable: true
}).show();
}
else{
var frmid = tabPanel.items.indexOf(np);

tabPanel.frames[frmid].location.reload();
np.show();

}
[/code]

在第二次点击时总是提示“frames为空或不为对象”,可是这个页面明明已经有了啊?为什么?请指教
[b]问题补充:[/b]
np就是lp手误了
其次我取得是下标 用下标也能定位的吧 不一定要id的
[b]问题补充:[/b]
而且用id我也试过了 还是同样的错误
[b]问题补充:[/b]
这些代码是写在a.jsp中的 要弹出的就是iframe中的b.jsp页面 a页面最外层还有个frame

用Ext.get方法也取不到这个iframe啊 我做tabPanel.frames[frmid]其实就是为了获取这个内嵌的iframe,但是代码跑到frames这边就报错了,请问除了我写的这种方法 还能用什么方法获取这个iframe?加id或name我都试过了 还是同样错

还有,我并没有点击关闭按钮,close应该还没调到吧
[b]问题补充:[/b]
代码太多我不可能全部贴出来的 其实我就是想知道如何获取一个tabPanel里面的iframe整个页面啊。取到了这个页面我才能去做刷新
[b]问题补充:[/b]
对了 说错了一点 tabPanel部分我是单独写在c.jsp中的,这个a.jsp也是c生成的一个iframe中,a和b其实是同级的,应该说c每次生成一个新的iframe。现在a想通过操作父页面c来增加一个兄弟页面b就是这样

  • 写回答

7条回答

  • iteye_10013 2009-09-03 17:45
    关注

    我知道了..
    tabPanel.frames[frmid]
    这肯定不对啦

    1.tabpanel是一个ext的组件,他没有什么frames的属性
    2.你是iframe,也不该是用frames[]的方法来取

    试着windowB.document.getElementById('myIfrId').src="http://www.g.cn"
    之类的方法找下.

    或者你给出a和b的一些关键代码,不然我们是没办法本地测试

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!