IE的模态对话框里的问题还真是不少
2005-01-14 08:58
351 查看
模态对话框(Modal Dialog),是一种会block顺序执行程序的窗口,比如C#里的MessageBox.Show(this,...),JavaScript里的alert(...)、confirm(...)等,是我们最常见的模态对话框。不关闭这种对话框程序的当前线程就被一直挂起了,这种窗口的特性最适合用来做条件分支的判断提示和Wizard窗口。
在IE里面,我们可以通过window对象的showModalDialog方法十分方便的开启一个模态对话框。可是这个从IE4.0就开始支持的feature,居然还有一堆一堆的问题:( 比如:点超级链接或Submit按钮会开启新窗口啊,不能使用F5刷新啊,拿不到模态窗口的opener啊,等等。不过这些老问题绕来绕去都还算是被解决了。剩下的什么怎么在模态窗口间传出传入参数啊,怎么执行其opener里的方法啊,怎么关闭啊,就属于没有好好看msdn和对DHTML的不熟悉了。
今天一不小心又发现一个模态对话框让人抓狂的问题,不能在里面使用XMLHTTP对象获取服务器数据,一调用就立刻返回空字符串。搞了半天找不到原因,于是啰里啰唆的把模态对话框的父窗口传到对话框内,把调用XMLHTTP对象的程序从模态窗口里原样移到父窗口里,从模态窗口去调父窗口里的方法,结果一下就取到服务器上的数据了<html>
<head>
<title>Caller</title>
</head>
<body>
<button onclick="OpenDialog()">Open Dialog
</button>
</body>
</html>
存为:Caller.htm
<html>
<head>
<title>Callee</title>
</head>
<body>
<table border="0" width="100%" height="100%">
<tr>
<td align="center" valign="middle">
<button onclick="GetData()" ID="Button1">Open Dialog
</button></td>
</tr>
</table>
</body>
</html>
存为:Callee.htm
欢迎回复您的实验结果,同时也欢迎讨论模态窗口的其它问题及解决方法。
在IE里面,我们可以通过window对象的showModalDialog方法十分方便的开启一个模态对话框。可是这个从IE4.0就开始支持的feature,居然还有一堆一堆的问题:( 比如:点超级链接或Submit按钮会开启新窗口啊,不能使用F5刷新啊,拿不到模态窗口的opener啊,等等。不过这些老问题绕来绕去都还算是被解决了。剩下的什么怎么在模态窗口间传出传入参数啊,怎么执行其opener里的方法啊,怎么关闭啊,就属于没有好好看msdn和对DHTML的不熟悉了。
今天一不小心又发现一个模态对话框让人抓狂的问题,不能在里面使用XMLHTTP对象获取服务器数据,一调用就立刻返回空字符串。搞了半天找不到原因,于是啰里啰唆的把模态对话框的父窗口传到对话框内,把调用XMLHTTP对象的程序从模态窗口里原样移到父窗口里,从模态窗口去调父窗口里的方法,结果一下就取到服务器上的数据了<html>
<head>
<title>Caller</title>
</head>
<body>
<button onclick="OpenDialog()">Open Dialog
</button>
</body>
</html>
存为:Caller.htm
<html>
<head>
<title>Callee</title>
</head>
<body>
<table border="0" width="100%" height="100%">
<tr>
<td align="center" valign="middle">
<button onclick="GetData()" ID="Button1">Open Dialog
</button></td>
</tr>
</table>
</body>
</html>
存为:Callee.htm
欢迎回复您的实验结果,同时也欢迎讨论模态窗口的其它问题及解决方法。
相关文章推荐
- [原]SWFUpload 在IE9下不显示问题及IE9中模态窗下flash文件选择问题的处理
- Qt按ESC关闭模态对话框不触发closeEvent()问题解析
- 模态对话框问题:父窗口打开一个模态子窗口后,子窗口的form提交给自己,弹出新窗口
- Qt按ESC关闭模态对话框不触发closeEvent()问题解析
- SWFUpload 在IE9下不显示问题及IE9中模态窗下flash文件选择问题的处理
- 设置字体的模态对话框跑到主窗体下面的问题
- Qt按ESC关闭模态对话框不触发closeEvent()问题解析(ESC默认调用的是reject()函数,所以必须覆盖这个函数才会有效果)good
- Qt按ESC关闭模态对话框不触发closeEvent()问题解析
- IE对话框showModalDIalog(模态)和showModelessDialog
- 给瀑布流加入模态对话框碰到的问题
- Chrome不支持showModalDialog模态对话框和无法返回returnValue的问题
- SWFUpload 在IE9下不显示问题及IE9中模态窗下flash文件选择问题的处理
- IE对话框showModalDialog(模态)和showModelessDialog
- Chrome不支持showModalDialog模态对话框和无法返回returnValue的问题
- 转:Chrome不支持showModalDialog模态对话框和无法返回returnValue的问题
- 关于IE模态弹窗的兼容性问题(以及…
- SWFUpload 在IE9下不显示问题及IE9中模态窗下flash文件选择问题的处理
- Chrome不支持showModalDialog模态对话框和无法返回returnValue的问题
- IE 模态对话框
- Jquery 模态对话框 数据传递问题