Ajax现在都用烂了,其实有时候对界面和兼容性要求不是太高的时候,一些很简单的方法就可以解决大堆Ajax代码才能解决的问题,比如模态窗口。
在网上找到了别人对模态窗口的一些总结,特此收藏。
1.打开窗口:
var handle = window.showModalDialog(url, objects, feathers);
其中:objects可以为参数(包括数组),也可以是对象。
通常的用法 objects = {window} ,把父窗体的对象共享给子窗体。
示例:
//打开模式对话框
function doSelectUser(txtId)
{
strFeatures="dialogWidth=500px;dialogHeight=360px;center=yes;middle=yes ;help=no;status=no;scroll=no";
var url,strReturn;
url="selUser.aspx";
strReturn=window.showModalDialog(url,'',strFeatures);
}
2.关闭子窗口:
window.close();
3.从子窗体传参数给父窗体:
window.returnVal = string;
3.清除缓存,防止模式窗口页面不更新的情况:
<META HTTP-EQUIV="pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
4.防止打开新窗口(如提交表单):
<base target="_self">
5.在模式窗口使用F5刷新页面:
<base target="_self">
<body onkeydown="if (event.keyCode==116){reload.click()}">
<a id="reload" href="<%=Request.Url%>" style="display:none"></a>
6.防止模式窗口打开的页面出现cookie丢失的情况:
模式窗口打开新窗口时,仅可以使用 showModalDialog(url,window,feathers); 方法,且 objects 为 window 。
7.在弹出窗口中获得或设置主窗口的任何值:
打开弹出窗口时用:showModalDialog(url, window, feathers)
在弹出窗口中使用 window.dialogArguments 对象(即主窗口传递过来的 window 对象集),即可以获得或者设置主窗口的值。
分享到:
相关推荐
介绍了javascript中模式对话框的用法 (showModalDialog)
总结一下,`window.showModalDialog`更适合需要用户完成特定任务并收集反馈的场合,因为它是阻塞的,用户无法忽略对话框继续操作。而`window.open`则更灵活,常用于打开新的浏览环境,如新标签页或窗口,允许用户...
总的来说,JS打开模式对话框提供了一种在Web应用中与用户交互的方式,通过`showModalDialog()` 和 `showModelessDialog()` 创建对话框,可以定制其外观和行为。然而,由于浏览器兼容性问题,开发者应谨慎使用,并...
2. **创建模式对话框**:在编程中,创建模式对话框通常涉及调用特定函数或方法。例如,在Windows API中,可以使用`CreateDialogParam`或`DialogBoxParam`函数;在Java中,可以使用`JOptionPane`类的`showModalDialog...
`Window.ShowModalDialog` 是一个在 Internet Explorer 浏览器中特有的方法,用于创建模态对话框。此方法允许开发者在一个新的窗口中打开一个HTML页面,并且这个新窗口将阻止用户与原始窗口交互,直到关闭为止。此外...
尽管`showModalDialog`在某些场景下仍然有用,但由于它的兼容性和标准支持问题,现代Web开发更倾向于使用`modal`对话框(如Bootstrap的模态组件)或者JavaScript库(如jQuery UI的dialog)来替代。这些替代方案提供...
非模式对话框的创建使用showModelessDialog函数,用法与showModalDialog类似: ```javascript window.showModelessDialog('filename.htm', window, 'dialogWidth=200px;dialogHeight=100px'); ``` 在创建非模式...
在网页开发中,`showModalDialog` 是一个老式的JavaScript函数,它允许创建一个模态对话框,用户必须与该对话框交互后才能继续与主窗口进行交互。然而,随着浏览器的发展,特别是谷歌浏览器(Chrome)对Web标准的...
在SharePoint 2010开发中,`_spPageContextInfo`对象提供了一种方便的方式来弹出模态对话框,即`showModalDialog`函数。这个功能在处理用户交互、表单填写、确认操作或者展示详细信息时非常实用。本篇文章将详细探讨...
在JavaScript中,`window.showModalDialog`是一个古老但仍然有用的函数,用于打开一个模态对话框,用户在对话框中进行交互,直到关闭对话框为止。然而,当涉及到跨域时,`showModalDialog`面临一个问题:它无法正确...
使用方法** ```javascript var returnValue = window.showModalDialog(sURL, vArguments, sFeatures); ``` **3. 参数说明** - **sURL**: 必需参数,指定要显示的文档的URL。 - **vArguments**: 可选参数,传递给...
8. **status**: 是否显示状态栏,默认为`yes`(模式对话框为`no`)。 9. **scroll**: 是否显示滚动条,默认为`yes`。 10. **dialogHide**: 在打印预览或打印时是否隐藏对话框,默认为`no`。 11. **edge**: 边框样式...
在JavaScript中,`showModalDialog`是一个用于打开模态对话框的方法,主要应用于IE浏览器,从版本4开始支持。模态对话框意味着用户必须关闭该对话框才能与父窗口进行交互。相反,`showModelessDialog`则创建一个非...
1. showModalDialog() 函数:用于打开模式对话框,例如: ``` <!-- showModalDialog( http://www.3lian.com, example04 , dialogWidth:400px;dialogHeight:300px; dialogLeft:200px;dialogTop:150px;center:yes;...
然而,由于浏览器的兼容性和安全性问题,`showModalDialog`在现代Web开发中逐渐被弃用,取而代之的是更灵活的`modal`组件或者`window.open`方法。 在标题提到的问题中,当使用`showModalDialog`并结合`iframe`来...
总结来说,通过window.showModalDialog方法可以创建一个模态对话框,并通过window.returnValue属性回传用户的选择。这种方法简单易用,但要注意其可能存在的兼容性问题,并关注浏览器的更新动态,以确保Web应用的可...
总结来说,利用模态对话框实现父窗体与子窗体间的数据传递是一种常见的Web交互设计模式。虽然`showModalDialog`在某些浏览器中已被废弃,但通过理解其工作原理,我们可以找到替代方案,如HTML5的`<dialog>`元素或...
1. 模式对话框会保持焦点,用户无法切换到其他窗口,直到关闭。 2. 非模式对话框不保持焦点,但始终显示在最前面。 3. 对于安全原因,某些浏览器可能限制了`showModalDialog`和`showModelessDialog`的使用,尤其是在...
通过以上步骤,我们可以在Struts2项目中实现利用`window.showModalDialog`方法弹出模态对话框并在完成特定操作后刷新父页面的功能。需要注意的是,在实际开发过程中还需要考虑浏览器兼容性和安全性等方面的问题,以...