首页 新闻 会员 周边 捐助

页面A怎样刷新页面B

0
悬赏园豆:100 [已关闭问题] 关闭于 2013-07-11 16:02

有这样一个场景:

页面B中链接,新打开一个window,显示页面A。

页面A中的一个button,点击后,要去刷新页面B中的一个frame。怎么实现?

在大地画满窗子的主页 在大地画满窗子 | 初学一级 | 园豆:102
提问于:2013-07-11 10:51
< >
分享
所有回答(6)
0

B 是 A 的 window.opener

相当于 A 调用 B ,也就是 window.opener 的JS函数进行刷新

window.opener.某个js函数,JS函数刷新本页面的iframe

二十三号同学 | 园豆:974 (小虾三级) | 2013-07-11 10:58

window.opener的方法不想用,因为B不一定是A用open方式打开的。

但是:

B的window名字是知道的,可不可以根据名字去刷新呢?代码怎么实现?

支持(0) 反对(0) 在大地画满窗子 | 园豆:102 (初学一级) | 2013-07-11 11:04

原本是用target的方式去实现的,但在IE10上target会在新的页面去打开,而不是刷新原来页面。所以决定不用target标签了

支持(0) 反对(0) 在大地画满窗子 | 园豆:102 (初学一级) | 2013-07-11 11:05
window.open('b.html','myname');
第一个参数指定body.jsp,第二个参数指定window名字
这样是不是可以
支持(0) 反对(0) 在大地画满窗子 | 园豆:102 (初学一级) | 2013-07-11 11:09

@在大地画满窗子: 

这个也不能用,和target一样IE10上出那样的问题。。。
支持(0) 反对(0) 在大地画满窗子 | 园豆:102 (初学一级) | 2013-07-11 11:10

@在大地画满窗子: 

你开发程序用IE10有点高吧,一般都是IE8吧。

你用的php?

支持(0) 反对(0) 二十三号同学 | 园豆:974 (小虾三级) | 2013-07-11 11:19

@二十三号同学: jsp,但要对应各个版本的ie

支持(0) 反对(0) 在大地画满窗子 | 园豆:102 (初学一级) | 2013-07-11 11:45

@在大地画满窗子: 对jsp不熟悉,我用的是Asp.NET .呵呵

支持(0) 反对(0) 二十三号同学 | 园豆:974 (小虾三级) | 2013-07-11 13:38
0

A页面: window.parent.document.getElementById("iframe").location.reload();

Eddiew | 园豆:286 (菜鸟二级) | 2013-07-11 11:05

Uncaught TypeError: Cannot read property 'location' of null

支持(0) 反对(0) 在大地画满窗子 | 园豆:102 (初学一级) | 2013-07-11 11:12

@在大地画满窗子: window.parent.document.getElementById("iframe").src

= window.parent.document.getElementById("iframe").src

支持(0) 反对(0) Eddiew | 园豆:286 (菜鸟二级) | 2013-07-11 11:28
0

帮顶~

Porbonan | 园豆:183 (初学一级) | 2013-07-11 11:17

3Q

支持(0) 反对(0) 在大地画满窗子 | 园豆:102 (初学一级) | 2013-07-11 11:23
0

由window.open 打开的子页面,可以通过JQuery 修改父页面的值:

var table = $("#tbRepeater", opener.document); //获取父页面的table

table.find("td #name").val("被子页面修改的值");

======

FYI

Yu | 园豆:12990 (专家六级) | 2013-07-11 11:44

谢谢回复。Jquery我们不用的。

本质,你这个也是使用opener,因为A页面时共用的,所有opener的使用方式,做最后的方案。

支持(0) 反对(0) 在大地画满窗子 | 园豆:102 (初学一级) | 2013-07-11 11:46

@在大地画满窗子: 

不用 opener ,建不了关系呢

等待其它答案

支持(0) 反对(0) Yu | 园豆:12990 (专家六级) | 2013-07-11 13:48
0

试试:window.parent.document.getElementById("iframe_id").contentWindow.location.reload();

dudu | 园豆:30778 (高人七级) | 2013-07-11 11:46

Cannot read property 'contentWindow' of null;

不是iframe,是新的一个window窗口

支持(0) 反对(0) 在大地画满窗子 | 园豆:102 (初学一级) | 2013-07-11 11:50

@在大地画满窗子: “要去刷新页面B中的一个frame”,这里的frame是什么

支持(0) 反对(0) dudu | 园豆:30778 (高人七级) | 2013-07-11 11:53
0

B页面关闭时刷新A页面的方法:A页面打开B页面,将B的body中的事件 onunload="window.opener.refresh();",refresh为A页面中的一个JS方法,当关闭B页面时,A页面会执行refresh方法

啊汉 | 园豆:202 (菜鸟二级) | 2013-07-11 12:54

呵呵,谢谢你的热心

支持(0) 反对(0) 在大地画满窗子 | 园豆:102 (初学一级) | 2013-07-11 14:12
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册