您的位置:首页 > 其它

模态窗口window.showModalDialog

2013-11-08 20:55 176 查看
1、基本知识
showModalDialog() (IE 4+ 支持)

showModelessDialog() (IE 5+ 支持)

window.showModalDialog()方法用来创建一个显示HTML内容的模态对话框。

window.showModelessDialog()方法用来创建一个显示HTML内容的非模态对话框。
2、使用方法
vReturnValue=window.showModalDialog(sURL[,vArguments][,sFeatures]);

vReturnValue=window.showModelessDialog(sURL[,vArguments][,sFeatures]);
3、参数说明
参数名称性质类型作用
sURL必选字符串用来指定对话框要显示的网页的URL。
vArguments可选变体用来向对话框传递参数。参数类型不限。

对话框通过window.dialogArguments来取得传递进来的参数。
sFeatures可选字符串用来描述对话框的外观等信息
4、sFeatures参数说明
参数名称参数属性说明
dialogHeightnpx对话框高度,不小于100px
dialogWidthnpx对话框宽度
dialogLeftnpx离主窗口左的距离
dialogTopnpx离主窗口上的距离
center{yes | no | 1 | 0 }窗口是否居中,默认yes
help{yes | no | 1 | 0 }是否显示帮助按钮,默认yes
resizable{yes | no | 1 | 0 }是否可改变大小,默认no
status{yes | no | 1 | 0 }是否显示状态栏,默认为yes[ Modeless]或no[Modal]
dialogHide{ yes | no | 1 | 0 | on | off }在打印或者打印预览时对话框是否隐藏,默认为no
scroll{ yes | no | 1 | 0 | on | off }指明对话框是否显示滚动条,默认为yes
edge{ sunken | raised }指明对话框的边框样式,默认为raised
unadorned{ yes | no | 1 | 0 | on | off }默认为no
注意:dialogHide,edge,unadorned这三个属性是用在HTA(HTML Aplication)中的,一般网页上用不到。
5、参数传递 通过vArguments来传递参数,类型不限制,对于字符串类型,最大为4096个字符,也可以传递对象,例如:
parent.htm

<script>

window.showModalDialog("sun.htm","传递进去的参数","help:no;scroll:no");

</script>

sun.htm

<script>

alert("传来的参数:" + window.dialogArguments);

</script>
6、返回值 通过window.returnValue向打开对话框的窗口返回信息,也可以是对象。例如:
parent.htm

<script>

result=window.showModalDialog("son.htm","","help:no;scroll:no");

alert(result);

</script>

son.htm

<script>

window.returnValue="这里存放返回的结果";

</script>
7、防止在模态窗口中提交后新开一窗口

在页面的 <body>前加入<base target="_self">

8、调用父窗口的方法同时传递参数 parent.htm

<script>

function show(){//父窗口的方法

alert("show");

}

var arg=new Object();//传递进去的参数

arg.win=window;//把当前窗口的引用当参数传进去

arg.str="argument";//要传进去的其他参数

window.showModalDialog("son.htm",arg,'help:no');

</script>

son.htm

<script>

var arg=window.dialogArguments;

alert(arg.str);

arg.win.show();//调用父窗口的方法

</script>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: