java Ajax cache_ajax之cache血与泪~~
場景:項目以ie5渲染頁面,點擊導出列表數據(Excel形式),點擊導出發送get請求,后臺生成Excel文件,返回文件地址信息
異常:ie第一次返回的信息正常,之后返回的都是第一次的結果,google正常
后臺方法斷點,ie只有第一次會進斷點,之后沒有進斷點
異常代碼:
alert(1);
$.ajax({
url: actionURL + "?"
+ $.param({
Action:"export",
strWhere: strwhere
}),
data: { page: page, rows: rows },
type: "get",
success: function (data) {
alert(data);
window.location.href = "../../Views/MEAS/Download.aspx?filePath=" + escape(data);
},
error: function (e) {
alert(e);
}
});
解決方案:1.加cache:false
2.url加隨機數
正常代碼:
alert(1);
$.ajax({
url: actionURL+ "?"
+$.param({
Action:"export",
strWhere: strwhere
}),
data: { page: page, rows: rows },
type:"get",
cache:false,
success:function(data) {
alert(data);
window.location.href= "../../Views/MEAS/Download.aspx?filePath=" +escape(data);
},
error:function(e) {
alert(e);
}
});
網上高人解讀:
cache的作用就是第一次請求完畢之后,如果再次去請求,可以直接從緩存里面讀取而不是再到服務器端讀取。
如果使用jquery,可以使用?cache參數來控制
$.ajax({
url:?"test.html",
cache:?false,?//或者設置true
success:?function(html){
$("#results").append(html);
}
});
總結
以上是生活随笔為你收集整理的java Ajax cache_ajax之cache血与泪~~的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 工行融e借晚还一天算逾期吗?会上征信吗?
- 下一篇: 信用卡申请表怎么填写获批额度高?教你几招