子窗口中执行一个action后如何跳转到父窗口?

huang_w 2009-02-02 11:38:11
我有一个查询页面,默认查询出多个公司名列表,点击公司名称进入该公司的所有员工列表页面(其中两个页面中后者覆盖了前者)
然后再点击人员列表中的人名连接,弹出子窗口(用window.open方式)显示人员详细信息,在子窗口进行相关信息输入后点击子窗口上的保存按钮.这时保存按钮执行的是一个action,现在我想让这个action跳转到刚才第一个查询页面,同时子窗口关闭.我现在的状况是:
保存后的跳转页面直接在子窗口显示,当我关闭子窗口时,父窗口显示的是刚才的第二个页面员工列表页面,而我想要的效果是保存完后子窗口关闭,同时父窗口重新显示查询页面.
大家有什么方法实现吗?说出思路,或者给出代码例子也可以.谢谢大家!
...全文
998 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
huang_w 2009-02-04
  • 打赏
  • 举报
回复
楼上的方法很好.
由于我们公司在开发的时候要考虑到性能问题,使用ajax还得向经理申请,一般不让随便使用AJAX
我后面没办法,改成模态框把值传回父窗口在由父窗口执行action,但是发现这个方法弄得复杂了,
就直接不用子窗口,让三个页面都显示在一个页面里,用返回按扭回到各个页面.
谢谢大家!
zhjf02 2009-02-03
  • 打赏
  • 举报
回复
打开页提交用ajax操作成功能后再close;然后再用二楼的方法再试试
另外父页面要禁止缓存,每次都要重新加载即可;
huang_w 2009-02-03
  • 打赏
  • 举报
回复
二楼的思路我用过了 我是提交后关闭window,然后windows.opener.location.href = 查询页面
但是执行的结果顺序是不确定的,也就是说有时候可以预期得到结果 ,有时候重新刷新查询页面才提示保存成功,
可能情况是我还没保存完成,就先跳到查询页面了.三楼用的是模态框方式,而我程序用的是open方式.
superjava_2006 2009-02-02
  • 打赏
  • 举报
回复
在保存后用js执行关闭子窗口,并执行 父窗口.href=查询页面
Jacky_Zhu_1983 2009-02-02
  • 打赏
  • 举报
回复
<SCRIPT>
function closeWindow(displayFileName,hideFileName){
window.opener.document.blogFileForm.fileName.value=displayFileName;
window.opener.document.blogFileForm.filePath.value=hideFileName;
//window.opener.document.getElementById("fileName").value=displayFileName;//父窗口的属性fileName
//window.opener.document.getElementById("filePath").value=hideFileName;
window.close();
}
</SCRIPT>

你要先进action做处理的话那可以用ajax处理了再调用closeWindow

wula0010 2009-02-02
  • 打赏
  • 举报
回复
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
<script language="javascript">
function OpenUp()
{
var ReturnVal,strFile;
strFile=encodeURI(document.getElementById("upfiles").value);
if(strFile!=null)
{
ReturnVal=window.showModalDialog("fileframe.jsp?filenames="+strFile+"&type1=a&type2=b","","dialogWidth:35;dialogHeight:30");
//ReturnVal=window.open("fileframe.jsp?filenames="+strFile+"&type2=a&type1=b","","dialogWidth:35;dialogHeight:30");
}
else
{
ReturnVal=window.showModalDialog("fileframe.jsp?type1=a&type2=b","","dialogWidth:100;dialogHeight:30");
//ReturnVal=window.open("fileframe.jsp?type2=1&type1=2","","dialogWidth:100;dialogHeight:30");
}
if (ReturnVal!=null)
{
document.getElementById("upfiles").value=ReturnVal;
}
}
</script>
</head>
<body>
<input type="text" id="upfiles" value=""/><INPUT onclick="OpenUp()" type="button" value="上传" id="up_file">
<INPUT onclick="OpenUp()" type="button" value="删除" id="del_file"><br>
<a href="download.jsp">下载</a>
</body>
</html>

子窗口的操作:
<INPUT onclick="returnupfile()" type="button" value="完成">

<script language="javascript">
function returnupfile()
{
var strReturn;
strReturn=document.getElementById("paraFiles").value;
window.returnValue =strReturn;
window.close();
}
</script>
要是还不明白,看看我的资源里的例子:
http://download.csdn.net/source/965319

81,092

社区成员

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

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