問題:使用ajax跳轉到新頁面無效(瀏覽器Safari)
window.open("{% url "runtestinfo" %}")
但是使用location能夠在原頁面跳轉
解決方法:
1.將ajax的async改為false
2.先定義變量為window.open()對象,然后使用location跳轉
var w = window.open(); w.location=("{% url "runtestinfo" %}")
具體代碼如下:
$.ajax({ cache: true, type: "POST", url:"{% url "save_testsuit" %}", data:{caseinfos:JSON.stringify(selectcase)}, async: false, error: function(request) { alert("保存失敗"); }, success: function(data) { if(data.respcode==0){ alert("頁面信息保存成功"); var w = window.open(); w.location=("{% url "runtestinfo" %}") } else{ alert(JSON.stringify(selectcase)) alert(data.msg); } } });
原因:參考下面的文章解決的,博主說是因為彈框被攔截了