posts - 108,comments - 56,trackbacks - 0
              1、基本知識 
          showModalDialog() (IE 4+ 支持)
          showModelessDialog() (IE 5+ 支持)
          window.showModalDialog()方法用來創建一個顯示HTML內容的模態對話框。
          window.showModelessDialog()方法用來創建一個顯示HTML內容的非模態對話框。


              2、使用方法
          vReturnValue=window.showModalDialog(sURL[,vArguments][,sFeatures]);
          vReturnValue=window.showModelessDialog(sURL[,vArguments][,sFeatures]);


              3、參數說明
           參數名稱  性質  類型  作用
           sURL  必選  字符串  用來指定對話框要顯示的網頁的URL。
           vArguments  可選  變體  用來向對話框傳遞參數。參數類型不限。
          對話框通過window.dialogArguments來取得傳遞進來的參數。
           sFeatures  可選  字符串  用來描述對話框的外觀等信息

              4、sFeatures參數說明
           參數名稱  參數屬性  說明
           dialogHeight  npx  對話框高度,不小于100px
           dialogWidth  npx  對話框寬度
           dialogLeft  npx  離主窗口左的距離
           dialogTop  npx  離主窗口上的距離
           center  {yes | no | 1 | 0 }  窗口是否居中,默認yes
           help  {yes | no | 1 | 0 }  是否顯示幫助按鈕,默認yes
           resizable  {yes | no | 1 | 0 }  是否可改變大小,默認no
           status  {yes | no | 1 | 0 }  是否顯示狀態欄,默認為yes[ Modeless]或no[Modal]
           dialogHide  { yes | no | 1 | 0 | on | off }  在打印或者打印預覽時對話框是否隱藏,默認為no
           scroll  { yes | no | 1 | 0 | on | off }  指明對話框是否顯示滾動條,默認為yes
           edge  { sunken | raised }  指明對話框的邊框樣式,默認為raised
           unadorned  { yes | no | 1 | 0 | on | off }  默認為no
           注意:dialogHide,edge,unadorned這三個屬性是用在HTA(HTML Aplication)中的,一般網頁上用不到。


              5、參數傳遞 通過vArguments來傳遞參數,類型不限制,對于字符串類型,最大為4096個字符,也可以傳遞對象,例如:
          parent.htm
          <script>
          window.showModalDialog("sun.htm","傳遞進去的參數","help:no;scroll:no");
          </script>
          sun.htm
          <script>
          alert("傳來的參數:" + window.dialogArguments);
          </script>


              6、返回值 通過window.returnValue向打開對話框的窗口返回信息,也可以是對象。例如:
          parent.htm
          <script>
          result=window.showModalDialog("son.htm","","help:no;scroll:no");
          alert(result);
          </script>
          son.htm
          <script>
          window.returnValue="這里存放返回的結果";
          </script>


              7、防止在模態窗口中提交后新開一窗口
             在頁面的 <body>前加入<base target="_self">

              8、調用父窗口的方法同時傳遞參數
          parent.htm
          <script>
          function show(){//父窗口的方法
           alert("show");
          }
          var arg=new Object();//傳遞進去的參數
          arg.win=window;//把當前窗口的引用當參數傳進去
          arg.str="argument";//要傳進去的其他參數
          window.showModalDialog("son.htm",arg,'help:no');
          </script>
          son.htm
          <script>
          var arg=window.dialogArguments;
          alert(arg.str);
          arg.win.show();//調用父窗口的方法
          </script>
          posted on 2007-07-07 08:01 破繭而出 閱讀(22792) 評論(7)  編輯  收藏 所屬分類: JavaScript

          FeedBack:
          # re: 模態窗口window.showModalDialog
          2009-10-16 16:50 | cenday
          不錯,清晰明了,我今天也在找showModalDialog之間傳遞參數和回調方面的東西,就找到這里來了  回復  更多評論
            
          # re: 模態窗口window.showModalDialog
          2009-10-16 16:51 | cenday
          @cenday
          ...  回復  更多評論
            
          # re: 模態窗口window.showModalDialog[未登錄]
          2010-10-22 11:12 | aaa
          不錯  回復  更多評論
            
          # re: 模態窗口window.showModalDialog
          2012-10-15 17:42 | kerenbing
          第七條 應該+head里  回復  更多評論
            
          # re: 模態窗口window.showModalDialog[未登錄]
          2012-11-20 12:18 | zzj
          @kerenbing
          +10086  回復  更多評論
            
          # re: 模態窗口window.showModalDialog[未登錄]
          2013-08-02 14:46 | dj
          dfgdfsdfgsdfg  回復  更多評論
            
          # re: 模態窗口window.showModalDialog[未登錄]
          2014-04-28 17:06 | 1
          1  回復  更多評論
            
          主站蜘蛛池模板: 赤水市| 鲜城| 甘南县| 托克逊县| 板桥市| 大渡口区| 师宗县| 南昌市| 道孚县| 若尔盖县| 北海市| 阳朔县| 慈利县| 兴国县| 深州市| 衡水市| 大理市| 昔阳县| 酉阳| 龙川县| 梨树县| 安塞县| 新安县| 无极县| 雅安市| 阿瓦提县| 福贡县| 同江市| 潮安县| 彭山县| 吴堡县| 岢岚县| 夏津县| 青州市| 青岛市| 定陶县| 福州市| 杭州市| 高陵县| 曲水县| 北碚区|