1.产生模态窗口
<input type="button" value="打开对话框" οnclick="showDialog('Default2.aspx')"/>
<SCRIPT LANGUAGE="JavaScript">
<!--
function showDialog(url) {
feature = "dialogWidth:500px;dialogHeight:400px;status:no;help:no";
window.showModalDialog(url, null, feature);
}
</SCRIPT>
2.模态窗口间传递多个值
父窗口:
<head runat="server">
<title>Parent Webform</title>
<script language="javascript">
function OpenChild()
{
var ParmA = retvalA.value;
var ParmB = retvalB.value;
var ParmC = retvalC.value;
var MyArgs = new Array(ParmA, ParmB, ParmC);
var WinSettings = "center:yes;resizable:no;dialogHeight:300px"
//ALTER BELOW LINE - supply correct URL for Child Form
var MyArgs = window.showModalDialog(
"Default4.aspx", MyArgs, WinSettings);
if (MyArgs == null)
{
window.alert(
"Nothing returned from child. No changes made to input boxes")
}
else
{
retvalA.value=MyArgs[0].toString();
retvalB.value=MyArgs[1].toString();
retvalC.value=MyArgs[2].toString();
}
}
</script>
</head>
<body>
<P><input id="retvalA" type="text" value="AAA"></P>
<P><input id="retvalB" type="text" value="BBB"></P>
<P><input id="retvalC" type="text" value="CCC"></P>
<P><button οnclick="OpenChild()" type="button">
Open Child Window</button>
</P>
</body>
</html>
子窗口:
<head runat="server">
<title>Child Webform</title>
<script language="javascript">
function Done() {
var ParmA = tbParamA.value;
var ParmB = tbParamB.value;
var ParmC = tbParamC.value;
var MyArgs = new Array(ParmA, ParmB, ParmC);
window.returnValue = MyArgs;
window.close();
}
function doInit() {
var ParmA = "Aparm";
var ParmB = "Bparm";
var ParmC = "Cparm";
var MyArgs = new Array(ParmA, ParmB, ParmC);
MyArgs = window.dialogArguments;
tbParamA.value = MyArgs[0].toString();
tbParamB.value = MyArgs[1].toString();
tbParamC.value = MyArgs[2].toString();
}
</script>
</head>
<body οnlοad="doInit()">
<P>Param A:<input id="tbParamA" type="text"></P>
<P>Param B:<input id="tbParamB" type="text"></P>
<P>Param C:<input id="tbParamC" type="text"></P>
<button οnclick="Done()" type="button">OK</button>
</body>
</html>