2013-10-06 273 views
40

我有一個Ajax調用後加載,在點擊我要重新加載頁面(像我按F5)jQuery的:刷新/刷新上點擊一個按鈕的頁面

我試過一個按鈕

$(".delegate_update_success").click(function() { 
    location.reload(); 
}); 

但它做了一個簡單的刷新,但我的頁面並沒有提出一個新的請求來獲取內容。 它應該發生就像我輸入URL來獲取該頁面。

+2

是那些要求高速緩存> –

+4

'location.reload(真);' –

+3

讓你確保你不會在你的代碼中重新定義'location'變量。或者(更好),使用'document.location.reload()'。 –

回答

98

您應該使用location.reload(true),它將釋放該特定頁面的緩存並強制頁面加載爲NEW頁面。

true參數強制頁面釋放它的緩存。

+0

這對我沒有用。只有這樣做:window.location.href = window.location.href; (來源:Satpal)。 – Yster

6

使用document.location.reload(true)它不會從緩存中加載頁面。

5

您還可以使用window.location.href=window.location.href;

+2

沒有其他方式爲我工作。感謝Satpal。 – Yster

+1

@Satpal你的答案適合我。你能否一塊一塊地解釋一下這段代碼?謝謝。你真的很有幫助。 –

8

如果您的按鈕從AJAX調用加載,你應該使用

$(document).on("click", ".delegate_update_success", function(){ 
    location.reload(true); 
}); 

,而不是

$(".delegate_update_success").click(function() { 
    location.reload(); 
}); 

還要注意的location.reloadtrue參數功能。

+0

我可以知道如何鏈接到HTML代碼嗎? – Anthosiast

3

使用此行只是在你的頭與

 window.location.reload(true); 

那麼將加載當前頁面或視圖。

0

使用window.location.href = url