• ajax打开新窗口防止被浏览器阻止问题


    1 打开新窗口,window.open(),这本身并不会被浏览器阻止,但是放在ajax方法中,弹出新窗口就被阻止了,如下:

      function mfopen(id, name) {
            jQuery.ajax({
                type: "GET",
                dataType: "text",
                url: "UserLogin.aspx?method=init",
                success: function (msg) {
                    var Json = eval("(" + msg + ")");
                    if (Json.result == "100") {
                        if ( Json.isagtuser != "0") {  
                            jErpPopup("没有资格", 'no.aspx', 415, 90, function () { });
                        }
                        else {
                            var cid = id;
                            var cname = name;
                            var url = 'chuli.aspx?id=' + cid + '&name=' + escape(cname)  + '&num=Math.Random()' + '';
                            window.open(url);
                        }
                    }
                    else {
                        jErpPopup("您还没有登录,请先登录", 'Login.aspx?fun=pingjiaagent2', 410, 180, function () { });
                    }
                }
            });
            }
           
      

    2,ajax默认异步,修改为同步执行,可以解决弹出新窗口被浏览器阻止的问题,如下:

     function mfopen(id, name) {
            jQuery.ajax({
                type: "GET",
                async:false,
                dataType: "text",
                url: "UserLogin.aspx?method=init",
                success: function (msg) {
                    var Json = eval("(" + msg + ")");
                    if (Json.result == "100") {
                        if ( Json.isagtuser != "0") {  
                            jErpPopup("没有资格", 'no.aspx', 415, 90, function () { });
                        }
                        else {
                            var cid = id;
                            var cname = name;
                            var url = 'chuli.aspx?id=' + cid + '&name=' + escape(cname)  + '&num=Math.Random()' + '';
                            window.open(url);
                        }
                    }
                    else {
                        jErpPopup("您还没有登录,请先登录", 'Login.aspx?fun=pingjiaagent2', 410, 180, function () { });
                    }
                }
            });
            }
    
  • 相关阅读:
    postgresql 简单入门
    自用 docker-compose
    前后端分离 开发环境通过CORS实现跨域联调
    导出 java.io.IOException: 权限不够
    mysql 数值与字符类型 长度梳理
    easyui input未设id导致的问题
    springmvc处理url请求步骤
    js中的变量提升(hoisting)
    auto semicolon insertion 自动分号补齐的坑
    $.ajax dataType设置为json 回调函数不执行
  • 原文地址:https://www.cnblogs.com/judy0605/p/3003590.html
Copyright © 2020-2023  润新知