浏览器禁止js打开新窗口

时间:2023-03-09 07:04:26
浏览器禁止js打开新窗口

在项目中,有个需求是需要ajax获取新地址,然后去打开该页面地址,这样会被浏览器拦截,可以采取以下方式:
1.再ajax请求先前,先创建一个新窗口

var newTab = window.open('', '_blank');

2.等到ajax请求成功后,将上面的window对象的location修改成像要的地址

newTab.location = '服务返回的地址';

基本代码实现如下所示:

 var newTab = window.open('', '_blank');
 $.ajax({
     type: 'post',
     dataType: 'json',
     data: {'user':'jerry'},
     success: function(e) {
         newTab.location = e.newAddress;
     }
 })