父页客户端代码:<head runat="server">
<title>无标题页</title>
<script language="javascript" type="text/javascript">
function UpdateQuantityDialogOpen() { var retval=""; retval=window.showModalDialog('UpdateQuantity.aspx','','dialogWidth:400px;dialogHeight:175px;status:no;dialogHide:true;help:no;scroll:no'); if(retval!="" && retval!=null) { window.execScript("__doPostBack('UpdateQuantity', '" + retval + "')","JavaScript"); }
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" Text="Button" />
</div>
</form>
</body>
</html>父页服务器端代码:protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Response.Write("do");
this.Button1.Attributes.Add("onclick", "UpdateQuantityDialogOpen();");
}
else
{
if (Request.Form["__EVENTTARGET"] == "UpdateQuantity")
{
Response.Write("返回值为:" + Request.Form["__EVENTARGUMENT"].ToString());
}
}
}
对话框页(UpdateQuantity.aspx)客户端代码:<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>无标题页</title>
<script language="javascript" type="text/javascript">
function ClosePopUp(returnVal) {
//设置返回值window.returnValue=document.getElementById(returnVal).value; //关闭window.close(); }
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" Text="Button" />
<input id="txtQuantityOrder" type="text" /></div>
</form>
</body>
</html>
对话框页(UpdateQuantity.aspx.cs)服务器端代码: protected void Page_Load(object sender, EventArgs e)
{
this.Button1.Attributes.Add("OnClick", "ClosePopUp('txtQuantityOrder');");
}
运行后和运行过程中没有报错,在对话框输入了信息后,单击按钮,父页没有打印任何东西,第一次加载的do也没有了。请问哪里有问题,或者有其他实现方法?
<title>无标题页</title>
<script language="javascript" type="text/javascript">
function UpdateQuantityDialogOpen() { var retval=""; retval=window.showModalDialog('UpdateQuantity.aspx','','dialogWidth:400px;dialogHeight:175px;status:no;dialogHide:true;help:no;scroll:no'); if(retval!="" && retval!=null) { window.execScript("__doPostBack('UpdateQuantity', '" + retval + "')","JavaScript"); }
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" Text="Button" />
</div>
</form>
</body>
</html>父页服务器端代码:protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Response.Write("do");
this.Button1.Attributes.Add("onclick", "UpdateQuantityDialogOpen();");
}
else
{
if (Request.Form["__EVENTTARGET"] == "UpdateQuantity")
{
Response.Write("返回值为:" + Request.Form["__EVENTARGUMENT"].ToString());
}
}
}
对话框页(UpdateQuantity.aspx)客户端代码:<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>无标题页</title>
<script language="javascript" type="text/javascript">
function ClosePopUp(returnVal) {
//设置返回值window.returnValue=document.getElementById(returnVal).value; //关闭window.close(); }
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server" Text="Button" />
<input id="txtQuantityOrder" type="text" /></div>
</form>
</body>
</html>
对话框页(UpdateQuantity.aspx.cs)服务器端代码: protected void Page_Load(object sender, EventArgs e)
{
this.Button1.Attributes.Add("OnClick", "ClosePopUp('txtQuantityOrder');");
}
运行后和运行过程中没有报错,在对话框输入了信息后,单击按钮,父页没有打印任何东西,第一次加载的do也没有了。请问哪里有问题,或者有其他实现方法?
这篇文章地址http://www.cnblogs.com/billy-lee/articles/392977.html
这里用了__doPostBack('UpdateQuantity', '" + retval + "'),而'UpdateQuantity'是一个aspx页面。所以我觉得很神奇
请高手指点!!!