zoukankan      html  css  js  c++  java
  • ajax回调打开新窗体被浏览器拦截

     1 function click_fun(){
     2 
     3     $.ajax({
     4         'url': '${pageContext.request.contextPath}/action/',
     5         'type': 'post',
     6         'dataType': 'json',
     7         'data': data,
     8         success: function (data) {
     9             window.open("www.baidu.com");//被拦截
    10         },
    11         error:function(){
    12  
    13         }
    14     });
    15 }

      被拦截原因:打开新窗体只能在点击事件内触发,点击事件内的回调函数内打开窗体会被拦截,浏览器会认为是广告弹窗之类的代码

    解决方案:

     1 function click_fun_new(){
     2     var tempwindow=window.open();//先打开临时窗体,由于是点击事件内触发,不会被拦截
     3     $.ajax({
     4         'url': '${pageContext.request.contextPath}/action/',
     5         'type': 'post',
     6         'dataType': 'json',
     7         'data': data,
     8         success: function (data) {
     9             tempwindow.location = "www.baidu.com";//当回调的时候更改临时窗体的路径
    10         },
    11         error:function(){
    12             tempwindow.close();//回调发现无需打开窗体时可以关闭之前的临时窗体
    13         }
    14     });
  • 相关阅读:
    rjust()方法
    rindex()方法
    rfind()方法
    replace()方法
    min(S)函数
    max(S)函数
    maketrans()方法
    lstrip()方法
    lower()方法
    eclipse Tomcat 启动报错
  • 原文地址:https://www.cnblogs.com/michelledawm/p/10456534.html
Copyright © 2011-2022 走看看