问题描述:
在子页面中,修改完点保存的时候,保存数据,自身关闭,父页面刷新,以显示修改后的数据
1、在父页面:点 修改时弹出子窗口的代码(用window.showModalDialog主要是让用户必须点此修改响应后才能做其他的任务):
//showModalDialog 窗体中的第二个参数 , 是当前窗体对象
<a href="#" onClick="window.showModalDialog('userupdate.do?userid=<%=lo_dt.uf_GetValue(i, 0)%>',window,'dialogWidth:480px;dialogHeight:180px;status:no;')">修改</a>
2、在子窗口中点保存修改,并刷新父窗口:
1)提交时 把 当前的子页面提交到 iframe 里
//此时 的form 提交到 iframe , iframe 是隐式的
<iframe name="commitArea" style='display:none;'></iframe>
<form action="usersave.do" method="post" target="commitArea">
<input type="button" value="保存" class="button" onClick="check();">
</form>
2) form 提交到 一个 Action ,在action 中
//在提交的action 方法 中 加上如下语句
request.setAttribute("updateuserok","修改成功");
并转发到当前子页面
3) 子页面关闭,并刷新父页面
<logic:present name="updateuserok">
<script>
alert("保存成功!");
//dialogArguments 是 父窗体传过来的对象
window.dialogArguments.window.location="user.do";
self.close();
</script>
</logic:present>
此时的user.do 进过数据库查找后,跳到父页面
本文介绍了一种在子页面完成数据修改后,通过特定方式保存数据并关闭子页面的同时刷新父页面的方法。该方法使用了window.showModalDialog来确保用户必须完成修改操作才能进行下一步操作,利用iframe提交表单并在Action层处理数据后返回结果,最终通过JavaScript实现了子页面的关闭和父页面的刷新。
1848

被折叠的 条评论
为什么被折叠?



