問題:使用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);
}
}
});
原因:參考下面的文章解決的,博主說是因為彈框被攔截了
