js关闭子窗口刷新父窗口

colie_li 2013-04-02 12:01:01


在点击submit按钮后,会向数据库发送更新后的数据,我的问题是,点击后如何关闭子窗口并且重新请求载入父窗口
...全文
8529 33 打赏 收藏 转发到动态 举报
写回复
用AI写文章
33 条回复
切换为时间正序
请发表友善的回复…
发表回复
ieck007 2014-09-21
  • 打赏
  • 举报
回复
在你关闭子窗口的js代码前面,添加一句window.opener.location.reload(); function sss(){ xxxx; .. xxxx; window.opener.location.reload(); close(); }
lotus_waterlily 2014-08-22
  • 打赏
  • 举报
回复
window.opener 的用法 在一般的用法中,只是用来解决关闭窗口时不提示弹出窗口, 而对它更深层的了解一般比较少。其 实 window.opener是指调用window.open方法的窗口。 在工作中主要是用来解决部分提交的。这种跨页操作对工作是非常有帮助的。 如果你在主窗口打开了一个页面,并且希望主窗口刷新就用这个,打开页面的window.opener就相当于 主窗口的window。 主窗口的刷新你可以用 window.opener.location.reload(); 如果你用虚拟的目录:如struts的*.do会提示你重试 你可以改成这样 window.opener.yourformname.submit() 就好了
lintao0823 2014-01-07
  • 打赏
  • 举报
回复
我说你们能不能搞清楚了问题再测试,测试成功了再回答啊
yixin111112 2013-08-06
  • 打赏
  • 举报
回复
问题是我的父窗口也是弹出的一个窗口~~~怎么办?
幽冥_L 2013-07-23
  • 打赏
  • 举报
回复
引用 9 楼 forgetsam 的回复:
子窗口提交后跳转到一个空白页面,此空白页面onload方法里close子窗口,返回特定returnValue。 父窗口此时showModalDialog刚执行完,得到特定returnValue判断后直接刷新,location.href或者重新提交都可以。
就是父窗口肿么抓那个returnValue的值
幽冥_L 2013-07-23
  • 打赏
  • 举报
回复
引用 14 楼 forgetsam 的回复:
[quote=引用 13 楼 cowfishy 的回复:] 引用 9 楼 forgetsam 的回复:子窗口提交后跳转到一个空白页面,此空白页面onload方法里close子窗口,返回特定returnValue。 父窗口此时showModalDialog刚执行完,得到特定returnValue判断后直接刷新,location.href或者重新提交都可以。 这样的话 会不会存在短暂的用户等待时间--close之后 刷新……
为什么有等待时间?close不需要时间,起码你看不出来。 刷新需要等待那是你刷新慢,不是这个方法的事。 你刷新不需要时间,自然就没等待,你刷新本身就慢,换什么方法都有等待。[/quote] 能不能给个代码瞧瞧啊 这样说是可以 没代码还是写不出来啊亲
咖啡爬虫 2013-04-06
  • 打赏
  • 举报
回复
关闭子窗口后,重新加载一次主窗口,相当于再发一次获得主窗口的请求就好
Homer_Gu 2013-04-03
  • 打赏
  • 举报
回复
<script> window.onbeforeunload=function window.onbeforeunload(){ window.opener.location.reload(); } </script>
iminright 2013-04-03
  • 打赏
  • 举报
回复
action里不是可以用PrintWriter 然后用write方法 比如 out.write("<script type='text/javascript'>") ; out.write("window.close();") ; out.write("window.opener.query();") ; out.write("</script>"); query()就是显示你页面数据的js方法
雍寇德 2013-04-03
  • 打赏
  • 举报
回复
后台写服务端跳转可以么 redirect
坚持2012 2013-04-03
  • 打赏
  • 举报
回复
引用 15 楼 caochuankui 的回复:
引用 6 楼 abcmsnet 的回复: window.opener.location.href=window.opener.location.href;window.close(); window.opener.location.replace(window.opener.document.referrer);window.close(); 这样应该可以吧
好像是window.parent.location.href="action";
坚持2012 2013-04-03
  • 打赏
  • 举报
回复
引用 6 楼 abcmsnet 的回复:
window.opener.location.href=window.opener.location.href;window.close(); window.opener.location.replace(window.opener.document.referrer);window.close();
这样应该可以吧
forgetsam 2013-04-03
  • 打赏
  • 举报
回复
引用 13 楼 cowfishy 的回复:
引用 9 楼 forgetsam 的回复:子窗口提交后跳转到一个空白页面,此空白页面onload方法里close子窗口,返回特定returnValue。 父窗口此时showModalDialog刚执行完,得到特定returnValue判断后直接刷新,location.href或者重新提交都可以。 这样的话 会不会存在短暂的用户等待时间--close之后 刷新……
为什么有等待时间?close不需要时间,起码你看不出来。 刷新需要等待那是你刷新慢,不是这个方法的事。 你刷新不需要时间,自然就没等待,你刷新本身就慢,换什么方法都有等待。
tempF 2013-04-03
  • 打赏
  • 举报
回复
window.opener.location.reload();
tempF 2013-04-03
  • 打赏
  • 举报
回复
点击事件后请求个ajax。返回正常后再刷父窗口,关窗 window.opener.reload(); window.close();
「已注销」 2013-04-03
  • 打赏
  • 举报
回复
<script type="text/javascript"> function add() { document.getElementById("myform").submit(); self.opener.reLoad(); setTimeout("sclose()", 50); } function sclose() { window.open('','_self'); window.close(); } </script>
sanrang 2013-04-03
  • 打赏
  • 举报
回复
实现过这样的功能: 1,点击submit提交action---forms[0].submit(); 2,在Action的方法中处理完数据添加以下代码即可: String js="<script language=JavaScript>window.opener.location.reload(); window.close();</script>"; PrintWriter out = null; try { out = httpServletResponse.getWriter(); } catch (IOException ex) { } out.print(js); out.close(); 妥妥的!!
坚持2012 2013-04-03
  • 打赏
  • 举报
回复
你是用struts2写的话,就是struts.xml的result组件写成这样: <result type="redirectAction" name="success"> <param name="namespace">命名空间</param> <param name="actionName">请求名</param> </result> 用servlet怎么写我就不写了,自己网上找吧
oxfed 2013-04-03
  • 打赏
  • 举报
回复
个人觉得,根本就没必要在一个新页面中更新记录。你可以在当前页面中定义一个div(默认隐藏,点击更新时显示)进行更新(更新时可以用ajax,免得提交整个页面),后台数据保存后,往前台返回一个状态量,如果没错误,前台js执行window.location.reload()刷新页面。 如果在新页面中进行更新,用在页面的submit按钮处理程序中往页面中添加js代码 window.opener.location.href=window.opener.location.href;window.close();应该没问题。(但这样页面内容已经传到客户端,只是在显示之前关闭了,所有感觉不太好,当你的更新页面的内容较多是本身就是一种流量的浪费)
balabala_sean 2013-04-03
  • 打赏
  • 举报
回复
引用 9 楼 forgetsam 的回复:
子窗口提交后跳转到一个空白页面,此空白页面onload方法里close子窗口,返回特定returnValue。 父窗口此时showModalDialog刚执行完,得到特定returnValue判断后直接刷新,location.href或者重新提交都可以。
这样的话 会不会存在短暂的用户等待时间--close之后 刷新之前, 前辈有更好的方法么
加载更多回复(12)

81,092

社区成员

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

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