fireinjava
2009-10-15 20:13 阅读 488

Ext 弹出窗口置顶 回传值到父页面

弹出窗口的代码:
[code="java"]
var win = new Ext.Window({
title : 'xx',
width : 200,
height : 200,
isTopContainer : true,
modal : true,
resizable : false,
contentEl : Ext.DomHelper.append(document.body, {
tag : 'iframe',
style : "border 0px none;scrollbar:true",
src : 'viewXXX.do',
height : "100%",
width : "100%"
})
});

[/code]
一个页面中的一个按钮用以上代码弹出窗口A,然后点击A上的一个按钮,也用上面代码弹出比A还大的窗口B,这样B比自己的容器A还大,整个A页面会被B遮住,且只能显示B的中间一部分,而B如果用new top.Ext.Window则我回传值时不能用window.parent.methodXX(),得找到对应的frame再找方法,所以非常不方便。
请问有什么办法使B可以不在A容器中且置顶,而且我又可以用window.parent.methodXX()回传值到父页面。
[b]问题补充:[/b]
感谢你们的回答。我的Top页面像论坛的那种,左边菜单,右下角是主显示区,所以不方便在Top页面写东西,而且B页面调用是的A页面的方法。
[b]问题补充:[/b]
window.parent.document.getElementsByTagName("iframe")['group_item_id'].contentWindow.setItemOrPage();
这种我是用过,可是非常的麻烦,当时是遇到什么问题了,所以放弃使用这种方式。
不过我注意到一种情况可以满足我的条件,就是把A页面内容搬到A父页面,这样A用普通的Ext.window({items:[A表单]})弹出,此时A上再按钮弹出B,满足B.parent是A,而且B不会显示在A窗口之内。。。不过这种要是A的内容多起来就不行了。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

3条回答 默认 最新

  • 已采纳
    JimJin JimJin 2009-10-15 23:37

    B页面调用是的A页面的方法 可以 给 A iframe 取name xxx
    在 B 页调用 top 的 frames["xxx"].window.methodXXXX

    点赞 评论 复制链接分享
  • swfchexin1 swfchexin1 2009-10-15 22:40

    用javsdcript全局变量啊

    点赞 评论 复制链接分享
  • JimJin JimJin 2009-10-15 23:19

    对,B就用new top.Ext.Window
    在A的老爸页建一全局变量 如: abc
    传值由abc来中转
    如 B 要给 A 传 3
    在B写:
    top.abc = 3
    在A就可拿到 top.abc

    大概就这意思

    点赞 评论 复制链接分享

相关推荐