在浏览器页面后退时,也就是说你点击链接到一个页面,然后又点击后退按钮回到刚才的页面,结果发现jQuery的ajax GET请求不再执行了???
禁用ajax缓存: $.ajaxSetup({ cache: false });
吐槽:为了解决这个问题在网上翻了一个小时,几乎所有答案都是废话连篇。终于在https://stackoverflow.com/questions/11508101/how-can-you-force-ajax-content-to-reload-when-a-user-presses-the-back-button-on一个冷清的角落找到了答案。答案只是添加一行代码而已。。。
$(document).ready(function(){ $.ajaxSetup({ cache: false }); // 仅添加这一句就可解决问题 $.ajax({ url: '/test_ajax', type: 'GET', dataType: 'json', success: function(data) { // 处理数据…… }, error: function() { } }); });