學習 學習 再學習

          學習才是唯一的出路

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            31 隨筆 :: 1 文章 :: 8 評論 :: 0 Trackbacks
          window.showModalDialog(URL,dialogArgments.features) 打開一個新窗口

          URL為要開啟的網頁名字。
          dialogArgments為設定好傳遞給新視窗網頁的參數,可以為任意數據類型。
          feature 與open()的類似,都是格式方面的設定。調用格式為featureName1:featureValue1:(分號)featureName2:featureValue2:

          關于feature具體的參數我就不詳細寫了,看名字就應該知道什么用處了吧。
          certer , dialogHeight, dialogLeft,dialogTop,dialogWidth,help(是否顯示help按鈕,下同),status,resizeable
          值=1為yes,0為no.

          我認為最重要的是dialogArgments,可以傳遞值到新的窗口。
          第二重要就是 它的返回值 window.returnValue.可以在showModalDialog開啟的窗口關閉后前,回傳一個任意類型的值。

          dialogArgments  可以傳入一個變量,但是 我認為最好是傳入一個window 這樣的話,不光你可以調用你前面定義的變量names 和a 等等,還可以取到前一個頁面上任何元素的值.如下面的代碼所示:

             <script language =javascript>
              alert(window.dialogArguments.names);
              alert(window.dialogArguments.a );
             
          // alert(window.dialogArguments.document.form1.t1.value)
              window.dialogArguments.a = "Hello World";  //可以改變WebFromA里面的變量的值
              window.dialogArguments.document.form1.t1.value  = "t1";//可以修改WebFrom1里面的TextBox的value;
             
             

          在WebFromB.aspx頁面 我們可以取到 names 和a 的值還可以取到WebFromA的值.,還可以給它賦值.
          整體的代碼如下:
          WebFromA.aspx
          <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebFormA.aspx.cs" Inherits="_5demo.ShowDig.WebFormA" %>

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

          <html xmlns="http://www.w3.org/1999/xhtml" >
          <head runat="server">
              
          <title>無標題頁</title>
              
          <script language=javascript>
              
          function fnA()
              
          {
                  names 
          = new Array(3);
                  names[
          0= "chenzhifeng";
                  names[
          1= "chenjiang";
                  
                  a
          = "shuhui";
               temp
          =   window.showModalDialog("WebFormB.aspx",window);
                 
          // alert(a);
                 document.getElementById("t3").value = temp;
              }

              
          </script>
          </head>
          <body>
              
          <form id="form1" runat="server">
              
          <div>
              
          <input type=text value ="feng" id = "t1" />
              
          <br />
              
              
          <input type=text value ="chen" id = "t2" />
              
          <input type=button value = "Click Me" onclick ="fnA();" id = "btn1" />
              
          <p>
              返回值:
          <input type = "text" id= "t3" />
              
          </div>
              
          </form>
          </body>
          </html>

          WebFormB.aspx 如下:
          <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebFormB.aspx.cs" Inherits="_5demo.ShowDig.WebFormB" %>

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

          <html xmlns="http://www.w3.org/1999/xhtml" >
          <head runat="server">
              
          <title>無標題頁</title>
              
          <script language =javascript>
             
          // alert(window.dialogArguments.names);
              alert(window.dialogArguments.a );
             
          // alert(window.dialogArguments.document.form1.t1.value)
              window.dialogArguments.a = "Hello World";  //可以改變WebFromA里面的變量的值
              window.dialogArguments.document.form1.t1.value  = "t1";//可以修改WebFrom1里面的TextBox的value;
             
             
              
          </script>
          </head>
          <body>
              
          <form id="form1" runat="server">
              
          <div>
              
          <input type=text id = "tt" value = "Hello ZiFeng"/>
              
          <script language =javascript>
              window.returnValue 
          = document.getElementById("tt").value;
              window.close();
              
          </script>
              
          </div>
              
          </form>
          </body>
          </html>

          在WebFormB.aspx中 window.returnValue是用于 返回給WebFromA.aspx的值.
          在WebFromA.aspx中,可以用一個變量來接收這個值 temp=   window.showModalDialog("WebFormB.aspx",window);

          J-CN工作室
          www.j-cn.org
          posted on 2009-12-15 20:59 鐵猴 閱讀(19139) 評論(7)  編輯  收藏 所屬分類: HTML相關

          評論

          # re: window.showModalDialog的傳值和返回值 2013-12-17 09:44 颯颯是
          颯颯  回復  更多評論
            

          # re: window.showModalDialog的傳值和返回值 [未登錄] 2013-12-31 13:06 s
          sss  回復  更多評論
            

          # re: window.showModalDialog的傳值和返回值 2014-09-24 14:46 10
          101010  回復  更多評論
            

          # re: window.showModalDialog的傳值和返回值 2015-06-17 15:58 ertret
          eee  回復  更多評論
            

          # re: window.showModalDialog的傳值和返回值 2015-06-17 15:58 ertret
          eeee  回復  更多評論
            

          # re: window.showModalDialog的傳值和返回值 [未登錄] 2015-10-30 11:25 test
          如果傳的值超長怎么傳  回復  更多評論
            

          # re: window.showModalDialog的傳值和返回值 [未登錄] 2016-04-14 14:56 77
          777  回復  更多評論
            

          主站蜘蛛池模板: 梁平县| 台南市| 兴宁市| 资兴市| 武清区| 沭阳县| 靖安县| 静宁县| 山阴县| 临泽县| 武城县| 武强县| 三原县| 建昌县| 太湖县| 邢台县| 哈巴河县| 犍为县| 龙陵县| 亚东县| 黑龙江省| 辉县市| 高淳县| 济源市| 博湖县| 金溪县| 象州县| 西吉县| 宁武县| 临武县| 清原| 湟中县| 滦南县| 塔城市| 阿拉尔市| 循化| 鹰潭市| 安阳市| 滦南县| 和田市| 彭州市|