ajax請求成功后js刷新當前頁,當前頁是post查詢結果(用post請求進行搜索篩選)的問題


下面的一個ajax操作,原先操作成功會刷新當前頁,保證用戶看到的數據是最新的,一般情況不會出現問題。
$.ajax({ url: url
+ "/addTeacherAuth", //請求的url地址 dataType: "json", //返回格式為json async: true, //請求是否異步,默認為異步,這也是ajax重要特性 data: {tid: tid, authValue: authValue}, //參數值 type: "GET", //請求方式 success: function (data, textStatus) { if (data.status == 1) { swal({ title: "", text: "添加教師權限成功", type: "success", showConfirmButton: "true", confirmButtonText: "關閉", animation: "slide-from-top" }, function () { // window.location.reload(); //刷新當前頁面 location.href = url + "/teacherList"; }); } else { swal({ title: "", text: data.msg, type: "error", showConfirmButton: "true", confirmButtonText: "關閉", animation: "slide-from-top" }); } }, error: function (XMLHttpRequest, textStatus, errorThrown) { console.log('請求發生錯誤:' + textStatus); } });
但是當當前頁面是post查詢結果頁面的話,如下圖,此時執行刷新當前頁面,瀏覽器就會發起窗口(360瀏覽器),詢問用戶是否再次執行post查詢,
如果用戶不小心點擊取消或者x,ajax操作后就不能刷新當前頁,不能保證用戶的數據是最新的。

個人解決辦法是重定向到一個新的頁面(該列表的沒有查詢條件下的初試狀態,是所有教師數據的列表頁面),這樣也能保證數據是最新的。(能力有限)

見上面代碼的location.href = url + "/teacherList";
當然,你也可以捕獲查詢條件,ajax成功后,再發起一個ajax把查詢的結果重新異步刷新,這樣也是可以達到效果的。


免責聲明!

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



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