<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    道非道 非常道

    勤思、謹言、慎行、厚積、薄發

    統計

    web

    天圓

    經濟 政治 軍事

    鍵康

    window 的 dialogarguments 和 showmodeldialog


         在B/S模式的應用項目,我們有可能要處理一些的模式對話框。

         在Javascript中的主要是用得了window.showmodeldialog方法

         關于Window.dialogarguments 參數主要是用來一個頁面發起一個模式對話框頁面,該模式頁面利用Window.dialogarguments將該頁面中的對象或其它的值傳回給發起頁面中橋梁作用。window.dialogArguments 即為父窗口window對象的引用

    例如:

         A 用window.showModalDialog()打開了B,B 用window.dialogArguments[0].open()打開了C,請問C關閉時怎么刷新B ?


     1       
     2 
     3 
     4 例子
     5 1.htm
     6 ===========
     7 <title>1</title>
     8 <input type=button value="open 2" onclick="window.showModalDialog('2.htm',window);">
     9 <script>
    10 alert("1")
    11 </script>
    12 
    13 
    14 2.htm
    15 ===========
    16 <title>2</title>
    17 <frameset cols="0,*">
    18 <frame src="">
    19 <frame src="b.htm">
    20 </frameset>
    21 
    22 b.htm
    23 ==========
    24 <input type=button value="open 3" onclick="window.showModalDialog('3.htm',window);">
    25 <script>
    26 alert("我是2")
    27 </script>
    28 
    29 
    30 3.htm
    31 =========
    32 <title>3</title>
    33 <frameset cols="0,*">
    34 <frame src="">
    35 <frame src="c.htm" name="x">
    36 </frameset>
    37 
    38 
    39 c.htm
    40 =====
    41 <input type="button" value="refresh 2 and close me" onclick="window.dialogArguments.location='2.htm';window.parent.close()">
    42 
    43 
    44 注意:showModalDialog緩存的厲害,請清空緩存每次測試


    轉自:    window.dialogArguments的使用,回調上級頁面
     1 上級頁面:showModelessDialogEX.htm
     2 <HTML>
     3 <HEAD>
     4 <TITLE>showModelessDialogEX.htm</TITLE>
     5 <SCRIPT>
     6 var sUserName="";
     7 
     8 function fnCallDialog(){
     9 showModelessDialog("myDialog.htm",window,"status:false;dialogWidth:300px;dialogHeight:300px");
    10 }
    11 
    12 function fnUpdate(){
    13       oName.innerText = sUserName;
    14 }
    15 </SCRIPT>
    16 </HEAD><BODY>
    17 <P>Enter your first name:
    18 <SPAN ID="oName" STYLE="color:red;font-size:24">Joan</SPAN></P>
    19 <INPUT TYPE="button"
    20 VALUE="Display Modeless Dialog" onclick="fnCallDialog()">
    21 </BODY>
    22 </HTML>
    23 
    24 彈出頁面:myDialog.htm
    25 <HTML>
    26 <HEAD>
    27 <TITLE>myDialog.htm</TITLE>
    28 <SCRIPT>
    29 function fnGetInfo() {
    30 var sData = dialogArguments;
    31 sData.sUserName = oEnterName.value;
    32 sData.fnUpdate();
    33 }
    34 function fnCancel() {
    35 var sData = dialogArguments;
    36 sData.sUserName = "Joan";
    37 sData.fnUpdate();
    38 }
    39 </SCRIPT>
    40 </HEAD>
    41 <BODY>
    42 <LABEL FOR="oEnterName" ACCESSKEY="f">
    43 Enter your <SPAN STYLE="text-decoration:underline">F</SPAN>irst Name</LABEL>
    44 <INPUT ID=oEnterName><BR><BR>
    45 <INPUT VALUE="Apply" TYPE=button onclick="fnGetInfo();">
    46 <INPUT VALUE="Ok" TYPE=button onclick="fnGetInfo();window.close();">
    47 <INPUT VALUE="Cancel" TYPE=button onclick="fnCancel();window.close();">
    48 </BODY>
    49 </HTML>
    50 
    51 其中myDialog.htm頁面回調showModelessDialogEX.htm頁面的fnUpdate(),進行數據更改操作。
    52 
    53 項目中用到的一個方法:
    54 
    55     function sendBackSign(){
    56       if(!onCheck()) return;
    57       window.dialogArguments[0].signContentPara ="&signTitle="+SignSheetForm.signTitle.value
    58                                                 +"&signContent="+SignSheetForm.signContent.value
    59                                                 +"&signPersonCuid="+SignSheetForm.signPersonCuid.value
    60                                                 +"&signTime="+SignSheetForm.signTime.value;
    61       window.dialogArguments[0].sendBack();
    62       window.close();
    63     }
    64     function closeWin(){
    65       window.close();
    66     }
    67 
    68 這里回調上級頁面的sendBack()方法

    使用:window.dialogArguments的使用
     1 window.dialogArguments的使用
     2 <HTML>
     3 
     4 <HEAD>
     5 
     6 <TITLE>showModelessDialogEX.htm</TITLE>
     7 
     8 <SCRIPT>
     9 
    10 var sUserName="";
    11 
    12 function fnCallDialog(){
    13 
    14 showModelessDialog("myDialog.htm",window,"status:false;dialogWidth:300px;dialogHeight:300px");
    15 
    16 }
    17 
    18 function fnUpdate(){
    19 
    20 oName.innerText = sUserName;
    21 
    22 }
    23 
    24 </SCRIPT>
    25 
    26 </HEAD>
    27 
    28 <BODY>
    29 
    30 <P>Enter your first name: <SPAN ID="oName" STYLE="color:red;font-size:24">Joan</SPAN></P>
    31 
    32 <INPUT TYPE="button" VALUE="Display Modeless Dialog" onclick="fnCallDialog()">
    33 
    34 </BODY>
    35 
    36 </HTML>
    37 
    38 
    39 Here is the code for "myDialog.htm".
    40 
    41 
    42 <HTML>
    43 <HEAD>
    44 <TITLE>myDialog.htm</TITLE>
    45 <SCRIPT>
    46 function fnGetInfo() {
    47 var sData = dialogArguments;
    48 sData.sUserName = oEnterName.value;
    49 sData.fnUpdate();
    50 }
    51 function fnCancel() {
    52 var sData = dialogArguments;
    53 sData.sUserName = "Joan";
    54 sData.fnUpdate();
    55 }
    56 </SCRIPT>
    57 </HEAD>
    58 <BODY>
    59 <LABEL FOR="oEnterName" ACCESSKEY="f">
    60 Enter your <SPAN STYLE="text-decoration:underline">F</SPAN>irst Name</LABEL>
    61 <INPUT ID=oEnterName><BR><BR>
    62 <INPUT VALUE="Apply" TYPE=button onclick="fnGetInfo();">
    63 <INPUT VALUE="Ok" TYPE=button onclick="fnGetInfo();window.close();">
    64 <INPUT VALUE="Cancel" TYPE=button onclick="fnCancel();window.close();">
    65 </BODY>
    66 </HTML>
    67 
    68 dialogArguments只能在mode和modeless窗口中才能使用,可以傳遞傳遞任意類型的值,
    69 上例就是傳得失window. 在以前的項目中,頁面之間傳遞參數經常使用的是url后接參數的形式,
    70 現在終于發現dialogArguments不愧為更好的方法。
    使用收藏: window.dialogArguments的使用收藏

     1 showModelessDialogEX.htm
     2 
     3 <HTML>
     4 <HEAD>
     5    <TITLE>showModelessDialogEX.htm</TITLE>
     6    <SCRIPT>var sUserName="";function fnCallDialog(){ showModelessDialog("myDialog.htm",window,"status:false;dialogWidth:300px;dialogHeight:300px");}function fnUpdate(){ oName.innerText = sUserName;}</SCRIPT>
     7 </HEAD>
     8 <BODY>
     9    <P>
    10     原始值:
    11     <SPAN ID="oName" STYLE="color:red;font-size:24">Hello</SPAN>
    12    </P>
    13    <INPUT TYPE="button" VALUE="彈出對話框" onclick="fnCallDialog()">
    14 </BODY>
    15 </HTML>
    16 
    17 myDialog.htm
    18 
    19 <HTML>
    20 <HEAD>
    21    <TITLE>myDialog.htm</TITLE>
    22    <SCRIPT>
    23 function fnGetInfo() {
    24 var sData = dialogArguments;
    25 sData.sUserName = oEnterName.value;
    26 sData.fnUpdate();
    27 }
    28 function fnCancel() {
    29 var sData = dialogArguments;
    30 sData.sUserName = "Joan";
    31 sData.fnUpdate();
    32 }
    33 </SCRIPT>
    34 </HEAD>
    35 <BODY>
    36    <LABEL FOR="oEnterName" ACCESSKEY="f">
    37     輸入名稱:
    38    </LABEL>
    39    <INPUT ID=oEnterName>
    40    <BR>
    41    <BR>
    42    <INPUT VALUE="應用" TYPE=button onclick="fnGetInfo();">
    43    <INPUT VALUE="確定" TYPE=button onclick="fnGetInfo();window.close();">
    44    <INPUT VALUE="取消" TYPE=button onclick="fnCancel();window.close();">
    45 </BODY>
    46 </HTML>

    相在文章:
             window.dialogArguments 是什么

    posted on 2009-07-09 10:25 星期五 閱讀(355) 評論(0)  編輯  收藏 所屬分類: web 2.0

    主站蜘蛛池模板: AV激情亚洲男人的天堂国语| 亚洲综合在线观看视频| 在线观看免费亚洲| 成人av免费电影| 亚洲av中文无码字幕色不卡| 国产高清免费观看| 美女被暴羞羞免费视频| 亚洲精品一级无码鲁丝片| 又大又硬又粗又黄的视频免费看| 亚洲国产精品尤物YW在线观看| 一级毛片人与动免费观看| 中文亚洲AV片在线观看不卡 | 久久精品国产亚洲av日韩| 精品无码无人网站免费视频 | 亚洲色一区二区三区四区| 特级淫片国产免费高清视频| 久久精品国产亚洲AV| 久久精品国产亚洲精品| 97在线免费视频| 777亚洲精品乱码久久久久久| 老司机在线免费视频| 精品亚洲国产成人av| 亚洲精品二区国产综合野狼| 一级毛片在线观看免费| 涩涩色中文综合亚洲| 亚洲成?v人片天堂网无码| 精品国产免费一区二区三区香蕉 | 亚洲日韩AV一区二区三区中文 | 国产精品国产自线拍免费软件| 性生大片视频免费观看一级| 亚洲av鲁丝一区二区三区| 67194成是人免费无码| 日韩一级片免费观看| 久久精品国产亚洲av水果派| 国产日产成人免费视频在线观看 | 久久久久国色AV免费观看| 亚洲毛片一级带毛片基地| 又黄又爽的视频免费看| 日本免费人成网ww555在线| 亚洲成av人片在线天堂无| 亚洲AV综合色区无码另类小说|