功能: 在一个窗体A中需要打开另外一个窗体B,在B窗体中填写值,返回到A窗体中。
path参数可以是任何jsp html action 等。
父窗体parant.html
<script>
function fortable1()
{
/****弹出模式对话框*****/
path = "table.html";
//向子窗体传参数:helloworld
//当子窗体关闭时,把子窗体的返回值赋值给arr.
var arr = window.showModalDialog(path,"helloworld","dialogHeight:500px;dialogWidth:450px;edge:Raised;center:Yes;z-look:no;help:No;resizable:no;status:yes;");
if (arr!= null){
var ss;
ss=arr.split("*")
document.all.a.value= ss[0];
document.all.b.value= ss[1];
}
}
</script>
</head>
<body>
<input type=text name=a><input type=text name=b>
<input type="button" name="S" value="选择" onClick="fortable1();">
<body>
</body>
</html>
子窗体 table.html
<head>
<META HTTP-EQUIV="Expires" CONTENT="0">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
</head>
/*************************************************************/
<SCRIPT LANGUAGE=JavaScript>
function aaa()
{
alert(window.dialogArguments);//获取父窗体传过来的参数
window.returnValue = selrow.value+"*"+selcol.value;//向父窗体传值
window.close();
}
</SCRIPT>
</HEAD>
<BODY >
输入表格
<table border="0" cellspacing="10" cellpadding="0">
<tr>
<td>
<INPUT TYPE=TEXT SIZE=7 ID=selrow></td>
<td>
<input type=text id=selcol size=7>
</tr>
<tr>
<td>
<BUTTON ID=Ok TYPE=button ONCLICK="aaa();">传值</BUTTON>
</td>
</tr>
</table>
</BODY>
</HTML>
知识:
1:vReturnValue = window.showModalDialog(sURL [, vArguments][,sFeatures])方法用来创建一个显示HTML内容的模式对话框。
sURL -- 必选参数,类型:字符串。用来指定对话框要显示的文档的URL。
vArguments -- 可选参数,类型:变体。用来向对话框传递参数。传递的参数类型不限,包括数组等。对话框通过window.dialogArguments来取得传递进来的参数。
sFeatures -- 可选参数,类型:字符串。用来描述对话框的外观等信息,可以使用以下的一个或几个,用分号“;”隔开。
可选字符串
dialogHeight:sHeight 可选字符串,指定对话框窗口的修饰,使用与一个或多个值以分号分隔。
dialogHeight:sHeight 设置对话框窗口的高度(见备注默认度量单位)。
dialogLeft: sXPos 置对话框窗口相对于桌面左上角的左侧位置。
dialogTop:sYPos 置对话框窗口相对于桌面左上角的榜首位置。
dialogWidth:sWidth 设置对话框窗口的宽度(见备注默认度量单位)。
center:{ yes | no | 1 | 0 | on | off } 中心指定是否要在桌面对话窗口。.默认为 yes。
dialogHide:{ yes | no | 1 | 0 | on | off } 指定对话框窗口是否隐藏在打印或使用打印预览。此功能只有当一个对话框是从信任的应用程序打开。默认是no。
edge:{ sunken | raised } 指定对话框窗口边缘风格。 默认是raised 。
resizable:{ yes | no | 1 | 0 | on | off } 指定对话框窗口中是否有固定的尺寸。 默认是no。
scroll:{ yes | no | 1 | 0 | on | off } 指定对话框窗口是否显示滚动条。默认为 yes。
status:{ yes | no | 1 | 0 | on | off } 指定对话框窗口是否显示状态栏。默认为yes不受信任的对话窗口和窗口不信任的对话。
unadorned:{ yes | no | 1 | 0 | on | off } 指定对话框窗口是否显示边框的窗口浏览器。 此功能只有当一个对话框是从信任的应用程序打开。默认是no。
分享到:
相关推荐
在描述中提到的"模式打开窗体",就是指`showModalDialog`创建的对话框具有模态特性,意味着用户必须先关闭该对话框才能继续与父窗口交互,这与非模态对话框(如`window.open`创建的)不同。 返回值`returnValue`是...
在JavaScript中,`showModalDialog`是一个用于打开模态对话框的方法,主要应用于IE浏览器,从版本4开始支持。模态对话框意味着用户必须关闭该...在实际应用中,根据需求选择合适的模式,并注意处理好窗口间的交互问题。
在`ShowModalDialog`中,将模式窗体添加到遮罩层的Child,并显示遮罩层。在`CloseModalDialog`中,移除模式窗体并隐藏遮罩层。 通过以上步骤,你可以在Silverlight应用中实现基本的模式窗体功能。值得注意的是,...
本文将详细介绍模态窗体的几种形式,并通过具体的代码示例来解释如何实现它们,尤其是与`showModalDialog`相关的应用。 1. **基本模态对话框**: `showModalDialog`是JavaScript中用于创建模态对话框的一个函数。...
在测试与各个浏览器兼容性的时候,发现在chrome浏览器下showModalDialog方法显示的并不是模态对话框,就像新打开一个页面一样,父窗口仍然可以随意获取焦点,并可以打开多个窗体,而且返回值returnValue也无法返回,...
**JS模式窗口** 在Web开发中,JavaScript提供了一种创建模态对话框的方式,被称为“JS模式窗口”。这种技术主要用于创建弹出式窗口,让用户在完成特定任务或查看信息时,不能与页面的其他部分进行交互。在标题“JS...
总结来说,利用模态对话框实现父窗体与子窗体间的数据传递是一种常见的Web交互设计模式。虽然`showModalDialog`在某些浏览器中已被废弃,但通过理解其工作原理,我们可以找到替代方案,如HTML5的`<dialog>`元素或...
- `status`:是否显示状态栏,IE5+中默认为yes(模式对话框)或no(非模式对话框)。 - `scroll`:是否显示滚动条,默认为是。 `window.showModelessDialog()`方法则与之相反,创建的是非模态对话框。非模态...
### 使用Div模拟showModalDialog模式菜单的实现方法 在网页设计与开发中,有时我们需要创建一个弹出式的对话框或窗口,以便用户可以进行特定的操作而不干扰到页面的其他部分。传统的`showModalDialog`方法已被废弃...
// 打开模式子窗体,获取返回值进行操作 function showModalOnly(me, url) { // ... var reValue = window.showModalDialog(url, window, "dialogHeight:500px; dialogWidth:987px; status:off; scroll:auto"); /...
6. **Response.Write("<script>window.showModalDialog(XXX.aspx')</script>")**:与showModelessDialog类似,但它是模态对话框,意味着用户必须关闭对话框才能继续与原窗口交互。同样,可以使用额外的参数控制...