程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> 歸納-子窗體傳值到父窗體

歸納-子窗體傳值到父窗體

編輯:.NET實例教程

第一種:Open

  1. 通過Opener方法調用父窗體方法傳值

  父窗體

 1<Html>
 2<head>
 3<meta http-equiv="Content-Type" content="text/Html; charset=gb2312">
 4<title>父窗體</title>
 5</head>
 6<body>
 7<form name="form1"   method='get'>
 8<input type=text name='txtvalue' value=''>
 9<input type='button' onclick='openWindow()'  value="彈出">
10</form>
11<script type="text/Javascript"> 
12     function openWindow() {
13        window.open(子窗體.Html','newWindow','height=300,width=300,scrollbars=auto');       
14     } 
15     function setValue(returnValue) {
16          document.getElementById('txtvalue').value=  returnValue;
17     }
18</script> 
19
20</body>
21</Html> 

  子窗體

 1<Html>
 2<head>
 3<meta http-equiv="Content-Type" content="text/Html; charset=gb2312">
 4<title>子窗口</title>
 5  <script type="text/Javascript">
 6
 7       function valueExit() {
 8           var returnValue =  docment.getElementById('txtValue').value;
 9           opener.setValue(returnValue);                  
10           window.close();
11       }
12  </script>
13</head>
14<body>
15<h1 align='center'>子窗口!</h1><hr>
16<div align='center'>
17<form name="fz" action='#' method='get'>
18<input type=text name='txtValue' id='txtValue'>
19<input type='button' value='關閉' onclick='valueExit()'/> 
20</form>
21</div>
22</body>
23</Html>

2.在子窗體裡面用window.opener.document.from方法傳值

  父窗體

 1<Html>
 2<head>
 3<meta http-equiv="Content-Type" content="text/Html; charset=gb2312">
 4<title>父窗體</title>
 5</head>
 6<body>
 7<form name="f1" action='#' method='get'>
 8<input type=text name='ft' value=''>
 9<input type='button' onclick='openWindow()'  value="彈出"/>
10</form>
11<script type="text/Javascript"> 
12<!-- 
13function openWindow() {
14     newWindow = window.open('z1.Html','newWindow','height=300,width=300,scrollbars=auto');       
15     if (newWindow != null)     {
16             newWindow.focus();     
17      } 
18}
19//--> 
20</script> 
21</select>
22</body>
23</Html> 

  Code

 1<Html>
 2<head>
 3<meta http-equiv="Content-Type" content="text/Html; charset=gb2312">
 4<title>子窗口</title>
 5</head>
 6<body>
 7<h1 align='center'> 子窗口!</h1><hr>
 8<div align='center'>
 9<form name="fz" action='#' method='get'>
10<input type=text name='tt'>
11<input type='button' value='關閉' onclick='window.opener.document.f1.ft.value=document.fz.
tt.value;self.close();' />
12</form>
13</div>
14</body>
15</Html>

擴展:子窗體關閉要刷新父窗體,在子窗體賦值的第一句加上opener.location= opener.location.href;

  第二種:ShowModalDialog

  1.window.returnValue方法傳值

  父窗體

 1<Html>
 2<head>
 3<script type="text/Javascript"> 
        function fnOpen() {
 4    var returnTarget = window.showModalDialog("zichuangti.ASPx", 'newWindow', 'dialogHeight=500px;dialogWidth=700px;center=yes;resizable=yes;help=no;');
 5             if (returnTarget != undefined && returnTarget.length > 0) {
 6                   document.getElementById("oArgs").value=returnTarget;
 7             }
        }
 8 </script>
 9</head>
10<body>
11    <form id="form1" runat="server">
12        <div>
13            傳過來的值: <input type="text" id="oArgs" runat ="server"/>
14            <input id="button" name="button" type="button" value="打開窗口" runat ="server" onclick="fnOpen()"/>
15        </div>
16    </form>
17
18</body>
19</Html>
20
21
22

<Html>
<head>
<script type="text/Javascript">     
    function exit() 
    {
        window.returnValue = form1.txtreturn.value; //返回值
         window.close();
    }
    </script>
</head>
<body>
    <form id="form1" runat="server">
        <div>
            傳遞過來的值: <input type="text" id="txtreturn" runat ="server"/>
            <input id="button" name="button" type="button" value="關閉窗口" runat ="server" onclick="exit()"/>
        </div>
    </form>
</body>
</Html>


  擴展:子窗體關閉要刷新父窗體,在打開窗體的URL後面加上 window.location.reload();

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved