隨筆-3  評論-26  文章-41  trackbacks-0

          利用vReturnValue = window.showModalDialog(sURL [, vArguments] [, sFeatures]),我們可以打開一個模態(tài)窗口,該窗口的優(yōu)點是限制用戶只能對當(dāng)前的頁面進(jìn)行操作,而對其父頁面不能進(jìn)行操作,常用于向?qū)Щ蛘咝畔@取頁面。
          利用其中的vArguments我們可以在父頁面和彈出的頁面中進(jìn)行參數(shù)的傳遞,參數(shù)可以為自定義的對象,也可以傳遞父頁面中任何一個控件的引用,這使得我們可以很容易的來操作父頁面中的各個元素,使得參數(shù)的傳遞變得非常容易。
          1.     自定義對象參數(shù)傳遞
          我們可以定義一個javascript對象,然后定義各種自定義屬性的值,然后可以將此對象傳遞到子頁面中。
          如:父頁面sender.htm源代碼為:

          <html> 
          <script>
          function show()
          {
               
          var person = new Object();
               person.myName
          =myName.value;
               person.age 
          = age.value;
               person.country 
          = country.value;
               window.showModalDialog(
          "target.htm",person,"");
          }

          </script> 
          <body>
              
          <table>
                  
          <tr>
                      
          <td>
                          name:
          </td>
                      
          <td>
                          
          <input id="myName"></td>
                  
          </tr>
                  
          <tr>
                      
          <td>
                          age:
          </td>
                      
          <td>
                          
          <input id="age"></td>
                  
          </tr>
                  
          <tr>
                      
          <td>
                          country:
          </td>
                      
          <td>
                          
          <input id="country"></td>
                  
          </tr>
              
          </table>
              
          <br>
              
          <input type="button" value="open" onclick="show()">
          </body>
          </html>
           
          彈出的子頁面target.htm的源代碼為:
           
          <html>
          <body>
              
          <table>
                  
          <tr>
                      
          <td>
                          name:
          </td>
                      
          <td id="myName">
                      
          </td>
                  
          </tr>
                  
          <tr>
                      
          <td>
                          age:
          </td>
                      
          <td id="age">
                      
          </td>
                  
          </tr>
                  
          <tr>
                      
          <td>
                          country:
          </td>
                      
          <td id="country">
                      
          </td>
                  
          </tr>
              
          </table>
          </body>
           
          <script>
              
          var person = window.dialogArguments;
              myName.innerText 
          = person.myName;
              age.innerText 
          = person.age;
              country.innerText 
          = person.country;
          </script>
           
          </html>
           
          上述的代碼可以將父頁面的信息封裝成一個對象,然后將該對象傳遞給子頁面。
           
           
          2.父頁面元素傳遞
          以將父頁面中元素對象的引用傳遞給子頁面,通過該引用我們可以訪問父頁面中的該元素對象。
          Sender.htm源代碼:
           
          <html> 
          <script>
          function show()
          {
               window.showModalDialog(
          "target.htm",infoDiv,"");
          }

          </script>
           
          <body>
              
          <div id="infoDiv">
                  
          <table id="infoTable">
                      
          <tr>
                          
          <td>
                              name:
          </td>
                          
          <td>
                              
          <input id="myName"></td>
                      
          </tr>
                      
          <tr>
                          
          <td>
                              age:
          </td>
                          
          <td>
                              
          <input id="age"></td>
                      
          </tr>
                      
          <tr>
                          
          <td>
                              country:
          </td>
                          
          <td>
                              
          <input id="country"></td>
                      
          </tr>
                  
          </table>
              
          </div>
              
          <br>
              
          <input type="button" value="conveyElement" onclick="show()">
          </body>
          </html>

          Target.htm源代碼:
          //其中利用元素對象的引用我們可以操縱父頁面的元素對象的屬性。
           
          <html>
          <body>
              
          <div id="childDiv">
              
          </div>
           
              
          <script>
               
          var infoDiv = window.dialogArguments;
              
          </script>
           
              
          <br>
              
          <input type="button" value="showInnerHtml" onclick='childDiv.innerHTML=infoDiv.innerHTML'>
              
          <br>
              
          <input type="button" value="changePColor" onclick='infoDiv.style.backgroundColor="lightgreen"'>
          </body>
          </html>
          posted on 2008-03-14 10:51 百年 閱讀(595) 評論(0)  編輯  收藏 所屬分類: Javascript Article
          <2025年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          常用鏈接

          留言簿(1)

          隨筆檔案

          文章分類

          文章檔案

          相冊

          收藏夾

          CSS

          Draw dynamicdrive

          Draw Flash

          Fade

          Flash+XML

          • Flash+XML
          • http://www.flashcom.com.cn/bbs/forumdisplay.php?f=3

          Jacob

          Search Website

          Struts

          Studying English

          Text Link

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 尚义县| 星座| 五原县| 土默特左旗| 西林县| 磐安县| 太谷县| 海安县| 略阳县| 马龙县| 永宁县| 得荣县| 兴义市| 丰原市| 德庆县| 和林格尔县| 绥中县| 卢湾区| 屏南县| 钟祥市| 德庆县| 江安县| 牟定县| 若尔盖县| 陆丰市| 启东市| 合阳县| 镇宁| 横山县| 濮阳市| 盐山县| 晋宁县| 兴化市| 任丘市| 周至县| 景谷| 新宁县| 梁河县| 武邑县| 正阳县| 龙川县|