首页编程window.showmodaldialog?用window.showModalDialog打开窗体如何关闭

window.showmodaldialog?用window.showModalDialog打开窗体如何关闭

编程之家2023-11-0779次浏览

你是否想了解更多关于window.showmodaldialog和用window.showModalDialog打开窗体如何关闭的知识?在本文中,小编将为您详细介绍这两个话题,帮助您更好地理解。

window.showmodaldialog?用window.showModalDialog打开窗体如何关闭

用window.showModalDialog打开窗体如何关闭

1.showModalDialog打开的窗口想访问父窗口的数据的话代码window.showModalDialog("filename.htm",window)在子窗体中用window.dialogArguments得到就是你的父窗体对象,这样就能访问到父窗体数据了. 2.在子窗体应用的文件的head区之间添加代码<base target="_self"这样在打开的子窗体中的链接仍然会在子窗体刷新,而不会跑到新窗口。。 3.配合上面这句以后,window.close()就可以关闭打开的Dialog了。

如何关闭showModalDialog窗口

一、showModalDialog和showModelessDialog有什么不同?

showModalDialog:被打开后就会始终保持输入焦点。除非对话框被关闭,否则用户无法切换到主窗

口。类似alert的运行效果。

showModelessDialog:被打开后,用户可以随机切换输入焦点。对主窗口没有任何影响(最多是被挡

住一下而以。

window.showmodaldialog?用window.showModalDialog打开窗体如何关闭

二、怎样才让在showModalDialog和showModelessDialog的超连接不弹出新窗口?

在被打开的网页里加上<base target="_self">就可以了。这句话一般是放在<head>之间的。

三、怎样才刷新showModalDialog和showModelessDialog里的内容?

在showModalDialog和showModelessDialog里是不能按F5刷新的,又不能弹出菜单。这个只能依靠

javascript了,以下是相关代码:

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

window.showmodaldialog?用window.showModalDialog打开窗体如何关闭

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

将filename.htm替换成网页的名字然后将它放到你打开的网页里,按F5就可以刷新了,注意,这个要

配合<base target="_self">使用,不然你按下F5会弹出新窗口的。

四、如何用javascript关掉showModalDialog(或showModelessDialog)打开的窗口。

<input type="button" value="关闭" onclick="window.close()">

也要配合<base target="_self">,不然会打开一个新的IE窗口,然后再关掉的。

五、showModalDialog和showModelessDialog数据传递技巧。

(作者语:本来想用一问一答形式来写的,但是我想不出这个怎么问,所以只好这样了。)

这个东西比较麻烦,我改了好几次了不是没办法说明白(语文水平越来越差了),只好用个例子说明了

例子:

现在需要在一个showModalDialog(或showModelessDialog)里读取或设置一个变量var_name

一般的传递方式:

window.showModalDialog("filename.htm",var_name)

//传递var_name变量

在showModalDialog(或showModelessDialog)读取和设置时:

alert(window.dialogArguments)//读取var_name变量

window.dialogArguments="oyiboy"//设置var_name变量

这种方式是可以满足的,但是当你想在操作var_name同时再操作第二个变理var_id时呢?就无法

再进行操作了。这就是这种传递方式的局限性。

以下是我建议使用的传递方式:

window.showModalDialog("filename.htm",window)

//不管要操作什么变量,只直传递主窗口的window对象

在showModalDialog(或showModelessDialog)读取和设置时:

alert(window.dialogArguments.var_name)//读取var_name变量

window.dialogArguments.var_name="oyiboy"//设置var_name变量

同时我也可以操作var_id变量

alert(window.dialogArguments.var_id)//读取var_id变量

window.dialogArguments.var_id="001"//设置var_id变量

同样还可以对主窗口的任何对象进行操作,如form对象里的元素。

window.dialogArguments.form1.index1.value="这是在设置index1元素的值"

六、多个showModelessDialog的相互操作。

因为光说很费劲,我就偷点懒,直接用代码来说了,如果不明白的话那就直接来信(oyiboy#163.net(

使用时请将#改成@))问我吧。

以下代码的主要作用是在一个showModelessDialog里移动别一个showModelessDialog的位置。

主文件的部份js代码。

var s1=showModelessDialog(''控制.htm'',window,"dialogTop:1px;dialogLeft:1px")//打开控

制窗口

var s2=showModelessDialog(''about:blank'',window,"dialogTop:200px;dialogLeft:300px")

//打开被控制窗口

控制.htm的部份代码。

<script>

//操作位置数据,因为窗口的位置数据是"xxxpx"方式的,所以需要这样的一个特殊操作函数。

function countNumber(A_strNumber,A_strWhatdo)

{

A_strNumber=A_strNumber.replace(''px'','''')

A_strNumber-=0

switch(A_strWhatdo)

{

case"-":A_strNumber-=10;break;

case"+":A_strNumber+=10;break;

}

return A_strNumber+"px"

}

</script>

<input type="button" onclick="window.dialogArguments.s2.dialogTop=countNumber

(window.dialogArguments.s2.dialogTop,''-'')" value="上移">

<input type="button" onclick="window.dialogArguments.s2.dialogLeft=countNumber

(window.dialogArguments.s2.dialogLeft,''-'')" value="左移">

<input type="button" onclick="window.dialogArguments.s2.dialogLeft=countNumber

(window.dialogArguments.s2.dialogLeft,''+'')" value="右移">

<input type="button" onclick="window.dialogArguments.s2.dialogTop=countNumber

(window.dialogArguments.s2.dialogTop,''+'')" value="下移">

以上关键部份是:

窗口命名方式:var s1=showModelessDialog(''控

制.htm'',window,"dialogTop:1px;dialogLeft:1px")

变量访问方式:window.dialogArguments.s2.dialogTop

这个例子只是现实showModelessDialog与showModelessDialog之间的位置操作功能,通过这个原理,

在showModelessDialog之间相互控制各自的显示页面,传递变量和数据等。这要看各位的发挥了。

如果打开了一个模式窗口,想在打开的窗口中,关闭本窗口,重新加载父窗口,代码如下:

Response.Write("<script

language=javascript>parent.window.opener=null;parent.window.dialogArguments.location.reload

();window.close();</script>");

或者

function doModal(url){

win=window.showModalDialog

(url,0,"dialogWidth:500px;dialogHeight:500px;status:no;help:no;");

document.location.reload();//js页面中加入这句话就行了

}

jsp中window.showModalDialog如何隐藏地址栏(jsp遵循了W3C)

showModalDialog弹出的dialog根本就不会有地址栏。

window其他参数含义及设置如下:

window.showModalDialog(sURL [, vArguments] [,sFeatures])

sFeatures的参数如下

1. dialogHeight:对话框高度,不小于100px

2. dialogWidth:对话框宽度。

3. dialogLeft:离屏幕左的距离。

4. dialogTop:离屏幕上的距离。

5. center:{ yes| no| 1| 0}:是否居中,默认yes,但仍可以指定高度和宽度。

6. help:{yes| no| 1| 0}:是否显示帮助按钮,默认yes。

7. resizable:{yes| no| 1| 0} [IE5+]:是否可被改变大小。默认no。

8. status:{yes| no| 1| 0} [IE5+]:是否显示状态栏。默认为yes[ Modeless]或no[Modal]。

9. scroll:{ yes| no| 1| 0| on| off}:是否显示滚动条。默认为yes。

用windowshowModalDialog打开窗体之后如何关闭

1.showModalDialog打开的窗口想访问父窗口的数据的话代码window.showModalDialog("filename.htm",window)\x0d\x0a在子窗体中用window.dialogArguments得到就是你的父窗体对象,这样就能访问到父窗体数据了.\x0d\x0a2.在子窗体应用的文件的head区之间添加代码

感谢您花时间阅读本文!我们希望通过对window.showmodaldialog的问题进行探讨,为您提供了一些有用的见解和解决方案。如果您需要更多帮助或者有其他疑问,请不要犹豫与我们联系。

8.baidu.com(ww.baidu.com)zlib?zlib1. dll是什么