window.showModalDialog基础

基本知识

l  showModalDialog() (IE 4+ 支持)

l  showModelessDialog() (IE 5+ 支持)

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

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

使用方法

var returnValue = window.showModalDialog(sURL[,vArguments][,sFeatures]);

var returnValue = window.showModelessDialog(sURL[,vArguments][,sFeatures]);

参数说明


参数名称


性质


类型


作用


sURL


必选


字符串


用来指定对话框要显示的网页的URL。


vArguments


可选


任何类型


用来向对话框传递参数。参数类型不限。

对话框通过window.dialogArguments来取得传递进来的参数。


sFeatures


可选


字符串


用来描述对话框的外观等信息

sFeatures参数说明


参数名称


参数属性


说明


dialogHeight


npx


对话框高度,不小于100px


dialogWidth


npx


对话框宽度


dialogLeft


npx


离主窗口左的距离


dialogTop


npx


离主窗口上的距离


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)中的,一般网页上用不到。

参数传递

通过vArguments来传递参数,类型不限制,对于字符串类型,最大为4096个字符,也可以传递对象,例如:

a.html

var p = { Name: "Sunny D.D", Age: 25 };

window.showModalDialog("b.html", p);

b.html

alert(window.dialogArguments.Name);

当显示b.html页面时,会弹出对话框,内容为“Sunny D.D”。

返回值

通过window.returnValue向打开对话框的窗口返回信息,也可以是对象。例如:

a.html

window.showModalDialog("b.html");

alert(window.returnValue.Name);

b.html

var p = { Name: "Sunny D.D", Age: 25 };

window.returnValue = p;

当关闭b.html页面时,会弹出对话框,内容为“Sunny D.D”。

防止模态窗口打开新窗口

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

<head>

    <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />

    <title>测试页</title>

    <base target="_self" />

</head>

<body>

</body>

调用父窗口的属性或者方法

参数方式

因为vArguments参数的类型没有限制,所以可以将父窗体对象作为参数的一个属性传递至子窗体:

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>

window.parent方式

在子窗体中,可以使用语句window.parent来获取父窗体对象,从而调用父窗体的属性与方法:

parent.htm

<script>

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

        alert("show");

    }

    window.showModalDialog("son.htm");

</script>

son.htm

<script>

    window.parent.show(); //调用父窗口的方法

</script>

//出处:http://www.cnblogs.com/sunnycoder/archive/2010/05/05/1728047.html

时间: 2024-10-14 00:39:04

window.showModalDialog基础的相关文章

window.showModalDialog 子窗口数据回填父窗口

window.open 打开窗口时,可以很轻松的取得其父窗口.项目中需要用 showModalDialog打开窗口,想要取得父窗口值,而且还要在 open的基础上修改 为了不让 window.returnValue 所返回的值不是那么烦索,就要想办法如何用showModalDialog 打开的窗口取得其父窗口.合理利用 showModalDialog 传入的参数便可以解决这个问题. 话不多说,看例子: 父窗口:a.html <html>     <head>         <

.window.showModalDialog 传值

1.window.showModalDialog("OA_JDB.html",StrZy, "dialogWidth=600px;dialogHeight=200px"); } 2,    document.getElementById("p1").innerHTML = window.dialogArguments; .window.showModalDialog 传值,布布扣,bubuko.com

window.showModalDialog()之返回值

window.showModalDialog的基本用法 showModalDialog() (IE 4+ 支持) showModelessDialog() (IE 5+ 支持) window.showModalDialog()方法用来创建一个显示HTML内容的模态对话框. window.showModelessDialog()方法用来创建一个显示HTML内容的非模态对话框. 使用方法: vReturnValue = window.showModalDialog(sURL [, vArgument

js window.showModalDialog

window showModalDialog 内容 (1)父页面打开窗口 (2)父页面向子页面传递参数 (3)子页面获取父页面传递的参数,并且返回一定的值. 代码: function getHQ1(option){ //父页面通过2种方式,向子页面传递参数 //1)直接在url中加参数与值.           如:/TBPWeb/technology/institutionManager/technologyTextarea.jsp?opt=2 //2)var obj = new Object

window.showModalDialog 与window.open传递参数的不同?

简单的说,就是一个在弹出窗口之后可以做其它的事,即window.open 另一个在弹出窗口之后不能做其它的事,只能是关闭了当前的窗口之后才能做其它的事,即window.showModalDialog 那么两者在使用上有什么不同呢?他们分别是如何和父窗口进行交互的呢? 先来看window.showModalDialog的例子: 我这里现在有一个父窗体parent.jsp,它里面有一个方法 function openChild(){                var temp = window.

window.open()与window.showModalDialog

弹出窗口两种方式:    1.window.showModalDialog:      var feature = "dialogWidth:615px;dialogHeight:505px;status:no;help:no;scroll:no;resizable:no;center:yes";      window.showModalDialog(url, Object(传给弹出窗口的参数,可以是任何类型),feature)       决定窗口的外观是第三个参数feature,

window.showModalDialog父子窗口参数传递

在开发过程中遇到window.showModalDialog()打开的模态对话框需要从子窗口传递返回值给父窗口中的某个插件,开始想通过window.opener得到,但是试了几次得不到,后来发现原来在当前打开窗口(子窗口)中可以通过window.returnValue=指定返回值;window.close();之后父窗口可以使用var result = window.showModalDialog(url,window,"dialogWidth=600px;dialogHeight=500px;

JS中window.showModalDialog()详解

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

window.showModalDialog()的简单用法

//创建一个显示html内容的模态对话框: vReturnValue = window.showModalDialog(sURL [, vArguments] [,sFeatures]) //创建一个显示html内容的非模态对话框: vReturnValue = window.showModelessDialog(sURL [, vArguments] [,sFeatures]) sURL:(必选参数)字符串..指定要显示的文档的URL vArguments:任意类型..想要显示的页面传递参数.