如何实现在关闭子页面的同时刷新父页面,分不多了,大家帮帮忙啊

wyumening 2012-04-16 02:24:17
以前也在js板块提过类似的问题,但是这次的情况不一样,页面是asp,部分代码如下:

b.asp页面的代码 :<body if action=close then response.write("onload='(closreload())'")></body>

body的开始标记和结束标记之间放了个保存按钮,点击这个按钮,会对数据库进行插入操作,然后再执行js函数closreload()
js函数closreload中的代码必须实现两个功能 第一:关闭当前页面(即b.asp),第二:刷新调用了当前页面的父页面(即a.asp),a.asp调用了lhgdialog弹窗控件弹出了b.asp这个页面, a.asp这个页面嵌套在一个iframe中,我试着用了很多方法
//parent.document.getElementById('bid').src='xxxx'
//parent.frames['bname'].reload();
//self.location.reload();
//window.opener.document.getElementById('iframe').reload();


可是都没起作用,最多只能刷新a.asp 但是不能关闭b.asp该怎么写才行呢?大家帮帮忙啊!
...全文
374 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wyumening 2012-04-19
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]
a.asp

JScript code


var odialog=$.dialog({...});
var odialogclose=odialog.close;
odialog.close=function(){
odialogclose.call(this);
window.location.href=window.location.href;
return fal……
[/Quote]

问题解决了, 谢谢您!
还在加载中灬 2012-04-17
  • 打赏
  • 举报
回复
a.asp也是某个页面的子页面吗?

是刷新最大的父页面还是a.asp页面?
还在加载中灬 2012-04-17
  • 打赏
  • 举报
回复
a.asp

var odialog=$.dialog({...});
var odialogclose=odialog.close;
odialog.close=function(){
odialogclose.call(this);
window.location.href=window.location.href;
return false;
}

b.asp

function closreload(){
parent.window.odialog.close();
}

试下,看可行不
wyumening 2012-04-17
  • 打赏
  • 举报
回复
上次是点击弹出的窗口的右上角的红x时,关闭当前页面并刷新父页面,这次是当点击b.asp这个页面的一个保存按钮时,先要执行插入数据的操作的,不过不是用ajax 而是用asp的语句
conn.execute"update wenti set huifu='"&HTMLEncode(request.Form("content"))&"',typeid=3,date3='"&now()&"',r3='"&request.Cookies("xm")&"' where id="&request.QueryString("id")
response.Redirect "admin_wenti_chuli.asp?action=close&id="&request.QueryString("id")
然后再根据这句 <body if action=close then response.write("onload='(closreload())'")></body>
调用js函数 closreload() ,现在的问题是在函数closreload中写什么代码能实现关闭当前页面并刷新父页面的功能
还在加载中灬 2012-04-17
  • 打赏
  • 举报
回复
嗯,那这样的话,感觉和上次没有什么不一样的啊

是在插入数据之后 调用吗?

是用AJAX的方式进行添加操作吗?
wyumening 2012-04-17
  • 打赏
  • 举报
回复
是刷新a.asp这个页面 a.asp这个页面是某个页面的iframe
wyumening 2012-04-16
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
window.opener.location.reload();
window.close();
[/Quote]
不起作用,可能是用了弹窗控件的问题,弹窗控件中也有个名为close的自定义方法,会有冲突,window.close()不起作用,b.asp不是用window.open方法打开的窗口,是通过调用lhgdialog弹窗控件打开的窗口,调用方式如下: $.dialog({ id: 'test2', title: '咨询转交',width:'710', height:'520', content: 'url:b.asp?id=<%=request.QueryString("id")%>', });

wzhiyuan 2012-04-16
  • 打赏
  • 举报
回复
window.opener.location.reload();
window.close();

87,901

社区成员

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

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