簡體   English   中英

當我單擊鼠標將其重定向到處理程序(頁面)時,如何使javascript每次都加載新數據(不使用緩存數據)

[英]how to make javascript load new data every time (without using cache data) when I redirect it to a handler(page) on mouse click

我正在單擊按鈕來初始化下載。 問題是第一次請求類型是200 (第一次加載),當我再次單擊下載時,它從緩存中獲取數據( 304 request type ),所以我需要使其每次都加載新數據,並且禁用緩存。 我該如何實現?

目前我使用

 $("#downloadbutton").live("click", function () {
window.location = "Handlers/somename.ashx?value="+somevalue+"&xxxxx="+$(".someid").text();

按鈕實時點擊功能。 如果可以使用ajax call(cache:false)避免相同情況,我很好。

如果您有權訪問目標頁面,則可以在目標頁面中使用以下元標記禁用緩存。

<head>
<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="pragma" content="no-cache" />    
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="expires" content="0" />
</head>

將一個隨機數添加到您在click事件中調用的文件的查詢字符串中。 這將觸發瀏覽器重新加載而不是使用緩存,因為您欺騙它以為這是一個新的頁面請求。

例:

 $("#downloadbutton").live("click", function () {
var timestamp = (new Date()).getTime();
window.location = "Handlers/somename.ashx?value="+somevalue+"&xxxxx="+$(".someid").text() + "ts=" + timestamp;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM