当前位置: 首页 > 图文教程 > 网络编程 > Javascript > javascript showModalDialog 多层模态窗口实现页面提交及刷新的代码

Javascript
扩展String功能方法
如何实现JS函数的重载
兼容低版本IE的JScript5.5实现
prototype.js的Ajax对象
Valerio 发布了 Mootools
理解JavaScript中的事件
Popup对象实现右键菜单
HTML DOM Viewer
页面内查找
浅谈JavaScript中面向对象技术的模拟
初学prototype,发个JS接受URL参数的代码
关于Blog顶部的滚动导航条代码
静态页面的值传递(三部曲)
[原创]防止网站内容被小偷采集的js代码
在线游戏大家来找茬II
图片预载入
滚动经典最新话题[prototype框架]下编写
一个对于Array的简单扩展
Array对象方法参考
为数据添加append,remove功能

Javascript 中的 javascript showModalDialog 多层模态窗口实现页面提交及刷新的代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 364 ::
收藏到网摘: n/a

javascript 多层模态窗口showModalDialog页面提交及刷新 在第N(N>1)层的模态页面中,如果想链接到其他页面或者刷新当前页,只能用
window.name = "__self";
window.open(window.location.href, "__self") //注意是2个下划线
替换 location.href
当需要关闭第N(N>1)层的模态窗口,并刷新第N-1层的模态页面时, 为防止刷新时弹出新窗口, 可以通过returnValue 以传递返回值给第N-1层模态窗口,来确认是否需要刷新
在按钮的提交事件中:
代码
复制代码 代码如下:

Response.Write("<script language='javascript'> ");
Response.Write("var w;if(window.dialogArguments != null) w = window.dialogArguments;");
Response.Write("window.returnValue=1;window.close();");
Response.Write("</script>");

在第N-1层模态窗口内控制模态窗口的弹出并确认是否需要刷新该页面
代码
复制代码 代码如下:

<script type="text/javascript">
function OpenShowDialog(id) {
var isReflesh = window.showModalDialog('Test.aspx?id=' + id, window, 'dialogWidth=670px;dialogHeight=250px;status:no;directories:yes;scrollbar:no;Resizable:no');
if (isReflesh == 1) {
window.name = "__self";
window.open(window.location.href, "__self")
}
}
</script>