模式窗口showModalDialog的用法总结

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

最近几天一直在处理模式窗口的问题,索性写了这篇总结,以供参考:

1。打开窗口:

var handle = window.showModalDialog(url, objects, feathers);

其中:objects可以为参数(包括数组),也可以是对象。

通常的用法 objects = {window} ,把父窗体的对象共享给子窗体。

2。关闭子窗口:

window.close();

3。从子窗体传参数给父窗体:

window.returnVal = string;

3。清除缓存,防止模式窗口页面不更新的情况:

HTML

<META HTTP-EQUIV="pragma" CONTENT="no-cache">

<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">

<META HTTP-EQUIV="expires" CONTENT="Mon, 23 Jan 1978 20:52:30 GMT">

ASP

<%

Response.Expires = -1

Response.ExpiresAbsolute = Now() - 1

Response.cachecontrol = "no-cache"

%>

PHP

header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");

header("Cache-Control: no-cache, must-revalidate");

header("Pragma: no-cache");

JSP

response.setHeader("Pragma","No-Cache");

response.setHeader("Cache-Control","No-Cache");

response.setDateHeader("Expires", 0);

4。防止打开新窗口(如提交表单):

<base target="_self">

5。在模式窗口使用F5刷新页面:

<base target="_self">

<body onkeydown="if (event.keyCode==116){reload.click()}">

<a id="reload" href="filename.htm" style="display:none">reload...</a>

其中:filename为窗口页面。

6。防止模式窗口打开的页面出现cookie丢失的情况:

模式窗口打开新窗口时,仅可以使用 showModalDialog(url,window,feathers); 方法,且 objects 为 window 。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航