语法:vReturnValue = window.showModalDialog(sURL [, vArguments] [, sFeatures])
1.假设sURL 是jump.aspx,在弹出的窗口jump.aspx的html代码中可以用window.returnValue返回值给当前窗口。
2.vArguments是当前窗口传给弹出窗口的变量,假如要把当前窗口的一个textbox里的值传给弹出窗口jump.aspx可以这样:
<script language=javascript>
var strSendValue=objForm.sendValue.value;
window.showModalDialog(jump.aspx,strSendValue,"dialogHeight:300px; dialogLeft:200px;");
</script>
<form id="objForm">
<input type="text" id="sendValue" value="Jane">
......
</form>
在jump.aspx页面的html代码中这样接受传来的值:
<script language=javascript>
var strReceiveValue=window.dialogArguments;
......
</script>
vArguments可以是一个textbox,label……里的值,也可以是一个变量,甚至可以是一个对象,比如窗口的句柄等,如:
window.showModalDialog(jump.aspx,window,"dialogHeight:300px; dialogLeft:200px;");
即把当前窗口的句柄(指针)传给了jump.aspx,然后,可以在jump.aspx的script里访问其父窗口的里的内容:
var objParentForm=window.dialogArguments;
var strValue=objParentForm.objForm.sendValue.value;
对于有Tab控件的页面来说,这个功能可以帮助弹出窗口找到其父窗口。因为在有Tab控件的Form里弹出窗口用parent属性只能导航到Tab所在的 页面,而不能获得Tab选项卡里的子页面的句柄,用上述方法可以把Tab选项卡里的子页面的句柄直接传给弹出窗口,就可以访问其父窗口了!