window.showModalDialog()弹出窗口获取返回值

可以返回值的弹出窗口:用的是window.showModalDialog()方法. window.showModalDialog(URL,dialogArgments.features) 打开一个新窗口

当弹出窗口关闭的时候就能得到返回值,下面有个简单的例子:

开发环境: Visual Studio.Net 2003(C#) + IE6.0

A.aspx

Java代码 复制代码
  1. <SCRIPT LANGUAGE=JAVASCRIPT>   
  2.     function btnGetReturnValue_onclick()    
  3.     {   
  4.                   var temp= window.showModalDialog("B.aspx","","center=yes;help=no;status=no");   
  5.                   document.Form1.TextBox1.value = temp;   
  6.     }   
  7. </SCRIPT>   
  8. .......   
  9. <Input  Type="Button" id=" btnGetReturnValue" οnclick="return btnGetReturnValue_onclick() value="获取">  
<SCRIPT LANGUAGE=JAVASCRIPT>
    function btnGetReturnValue_onclick() 
    {
                  var temp= window.showModalDialog("B.aspx","","center=yes;help=no;status=no");
                  document.Form1.TextBox1.value = temp;
    }
</SCRIPT>
.......
<Input  Type="Button" id=" btnGetReturnValue" οnclick="return btnGetReturnValue_onclick() value="获取">

B.aspx.cs
Java代码 复制代码
  1. 在你想操作的事件中加上   
  2. string str = "返回值"  
  3. Response.Write("<script language=javascript>window.returnValue ="+str+";window.close()</script>");  
在你想操作的事件中加上
string str = "返回值"
Response.Write("<script language=javascript>window.returnValue ="+str+";window.close()</script>");

我的测试:
test.aspx
Java代码 复制代码
  1. <%@ Page Language="C#" AutoEventWireup="true" CodeFile="test.aspx.cs" Inherits="test" %>   
  2.   
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">   
  4.  <HTML>      
  5.   <HEAD>      
  6.   <TITLE></TITLE>      
  7.   
  8.   </HEAD>      
  9.   <BODY>      
  10.   <form id="Form1" method="post" runat="server">   
  11.   <SCRIPT LANGUAGE=JAVASCRIPT>   
  12.     function btnGetReturnValue_onclick()    
  13.     {   
  14.                   var temp= window.showModalDialog("testopen.aspx","","center=yes;help=no;status=no");   
  15.                       if   (temp!=undefined)      
  16.                           {      
  17.                             document.Form1.TextBox1.value = temp;   
  18.                           }      
  19.                         else  
  20.                         {   
  21.                             document.Form1.TextBox1.value = "null";    
  22.                         }   
  23.   
  24.     }   
  25. </SCRIPT>   
  26. <Input  Type="Button" id=" btnGetReturnValue" οnclick="return btnGetReturnValue_onclick()" value="获取">   
  27.          
  28.       <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>   
  29. </form>   
  30.   </BODY>      
  31.   </HTML>   
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="test.aspx.cs" Inherits="test" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <HTML>   
  <HEAD>   
  <TITLE></TITLE>   

  </HEAD>   
  <BODY>   
  <form id="Form1" method="post" runat="server">
  <SCRIPT LANGUAGE=JAVASCRIPT>
    function btnGetReturnValue_onclick() 
    {
                  var temp= window.showModalDialog("testopen.aspx","","center=yes;help=no;status=no");
                      if   (temp!=undefined)   
                          {   
                            document.Form1.TextBox1.value = temp;
                          }   
                        else
                        {
                            document.Form1.TextBox1.value = "null"; 
                        }

    }
</SCRIPT>
<Input  Type="Button" id=" btnGetReturnValue" οnclick="return btnGetReturnValue_onclick()" value="获取">
      
      <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</form>
  </BODY>   
  </HTML> 



testopen.aspx
Java代码 复制代码
  1. <%@ Page Language="C#" AutoEventWireup="true" CodeFile="testopen.aspx.cs" Inherits="testopen" %>   
  2.   
  3. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">   
  4.   
  5. <HTML>      
  6.   <HEAD>      
  7.   <TITLE></TITLE>      
  8.   
  9.   </HEAD>      
  10.      
  11.   <BODY>      
  12.   <base target="_self">   
  13. <form id="Form1" method="post" runat="server">   
  14.     <asp:TextBox ID="cc" runat="server"></asp:TextBox>   
  15.     <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />   
  16.   
  17. </form>   
  18.   </BODY>      
  19.   </HTML>  
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="testopen.aspx.cs" Inherits="testopen" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<HTML>   
  <HEAD>   
  <TITLE></TITLE>   

  </HEAD>   
  
  <BODY>   
  <base target="_self">
<form id="Form1" method="post" runat="server">
    <asp:TextBox ID="cc" runat="server"></asp:TextBox>
    <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />

</form>
  </BODY>   
  </HTML>



testopen.aspx.cs
Java代码 复制代码
  1. using System;   
  2. using System.Data;   
  3. using System.Configuration;   
  4. using System.Collections;   
  5. using System.Web;   
  6. using System.Web.Security;   
  7. using System.Web.UI;   
  8. using System.Web.UI.WebControls;   
  9. using System.Web.UI.WebControls.WebParts;   
  10. using System.Web.UI.HtmlControls;   
  11.   
  12. public partial class testopen : System.Web.UI.Page   
  13. {   
  14.     protected void Page_Load(object sender, EventArgs e)   
  15.     {   
  16.     }   
  17.     protected void Button1_Click(object sender, EventArgs e)   
  18.     {   
  19.         string str = this.cc.Text.ToString();   
  20.         Response.Write(str);   
  21.         Response.Write("<script language=javascript>window.parent.returnValue ='" + str + "';window.parent.close();</script>");//   
  22.     }   
  23. }  

转载于:https://www.cnblogs.com/guozengxin/archive/2010/03/18/1689370.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值