国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

JS模態窗口返回值兼容問題的完美解決方法

2019-11-20 09:52:45
字體:
來源:轉載
供稿:網友

因系統要兼容原IE已使用的關閉方法,經調試測得,需對window.dialogArguments進行再較驗,不然易出問題。

function OKEnd(vals) {  if (vals == null) vals = "TRUE";  if (typeof (window.opener) == "undefined") {    if (typeof (window.dialogArguments) != "undefined") {      if (window.dialogArguments && window.dialogArguments != null) {        window.opener = window.dialogArguments;        if (window.opener && window.opener != null) {          window.opener.ReturnValue = vals;        }      }    }  }  else {    if (window.opener && window.opener != null) {      window.opener.ReturnValue = vals;    }  }  window.returnValue = vals;  self.close();}

返回值接收的,只需在原有IE的接收模式下,多較驗一下opener就可以了,如下:

//選擇變更部門     function SetOrganizeTree2() { var url="彈出頁面";       var ret = window.showModalDialog(url, window, "dialogWidth=400px;dialogHeight=500px;status=no;help=no;scroll=yes;resizable=yes;");       if (typeof (ret) == "undefined") {         ret = window.ReturnValue;       }       if (ret) {         document.getElementById("hidDeptCode2").value = ret;         document.getElementById("btnDeptCodeAdd").click();       }       return false;     }

JS模態窗口返回值兼容問題完美解決方法

1、打開彈出窗口時把 window 作為第二個參數傳入。

 var result = window.showModalDialog(url, window, "dialogWidth=" + width + "px;dialogHeight=" + height + "px;resizable:yes;") if (typeof (result) == 'undefined') {     result = window.ReturnValue;   }   return result;

2、在彈出窗口中,執行如下JS,以接收傳入的window

 if (typeof (window.opener) == 'undefined') window.opener = window.dialogArguments;

3、彈出窗口關閉前,調用如下JS賦返回值

 window.retureValue = vals;    if (window.opener && window.opener != null)        window.opener.ReturnValue = vals;     window.close();

原理探討:

chrome下,標準方法,在彈出頁面不回發的情況下,是可以返回值的。 有回發則不能正常返回值。此方法可以解決。

IE下標準方法,有時不明原因不能正確返回值,此方法可解決。

FF未詳細測試,應該問題不大。

以上這篇JS模態窗口返回值兼容問題的完美解決方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 元阳县| 嵩明县| 连江县| 宁远县| 彰化县| 长治县| 阳原县| 盐边县| 巴林右旗| 桐乡市| 巩义市| 波密县| 宁波市| 巍山| 大理市| 吕梁市| 荔波县| 微山县| 安龙县| 绵阳市| 宁远县| 怀柔区| 民勤县| 县级市| 杭州市| 永宁县| 永城市| 门头沟区| 南召县| 宾川县| 灵武市| 昌吉市| 睢宁县| 郸城县| 清丰县| 夏邑县| 榆林市| 大洼县| 新津县| 托克逊县| 四子王旗|