ajax請求成功后打開新開窗口(window.open())被攔截的解決方法


問題:今天在做項目時需要在ajax請求成功后打開一個新的窗口,此時遇到瀏覽攔截了新窗口的問題,嘗試在ajax 回調函數中模擬執行 click 或者 submit 等用戶行為(trigger('click')),瀏覽器也會認為不是由用戶主動觸發的,因此不能被安全執行,所以被攔截。

解決方法:先創建一個新窗口,然后在回調函數中修改url

var new_window = window.open();
 $.ajax({
      url: "submit_already_save.html",
      type: 'post',
      dataType: 'json',
      data:info,
      error:function () {
          new_window .close();
       },
       success:function(result){
          new_window .location = "www.baidu.com;
       }
  });

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM