Google不兼容ShowModalDialog()弹出对话框的解决办法

<script type="text/javascript">
        //弹窗函数
        function openDialog() {
            var url = "https://www.xxxx.com/UI/Test.aspx?uid=111&Userid=luke";
       //调用实例 
            var modalReturnValue = myShowModalDialog(url, window, 450, 500);
            //alert(modalReturnValue.name);
        }
        //弹出框google Chrome执行的是open
        function myShowModalDialog(url, args, width, height) {
            var tempReturnValue;
            if (navigator.userAgent.indexOf("Chrome") > 0) {
                var paramsChrome = 'height=' + height + ', width=' + width + ', top=' + (((window.screen.height - height) / 2) - 50) +
                    ',left=' + ((window.screen.width - width) / 2) + ',toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no';
                window.open(url, "newwindow", paramsChrome);
            }
            else {
                var params = 'dialogWidth:' + width + 'px;dialogHeight:' + height + 'px;status:no;dialogLeft:'
                            + ((window.screen.width - width) / 2) + 'px;dialogTop:' + (((window.screen.height - height) / 2) - 50) + 'px;';
                tempReturnValue = window.showModalDialog(url, args, params);
            }
            return tempReturnValue;
        }
    </script>

返回值写法

            protected void Page_Load(object sender, EventArgs e)
            {
                if (!Page.IsPostBack)
                {
                    Response.Write("<script>window.returnValue = '返回值OK'; </script> ");
                }
            }

 

posted @ 2021-01-14 10:42  夜月之光  阅读(379)  评论(0编辑  收藏  举报