2013-09-01 66 views
2

Here是斌。我試圖通過在函數refresh()中使用location.reload()並在按鈕中使用onclick='refresh()'來重新加載頁面的示例。出於某種原因,頁面不能重新加載。簡單的JavaScript重新加載不工作

的JS功能:

function refresh() { 
    location.reload(); 
} 

的HTML按鈕:

<button onclick='refresh()'>Try Refreshing!</button> 
+0

您不能訪問該功能。它超出了範圍。 – CharliePrynn

回答

5

你的刷新方法不是在全球範圍內 - 這是您的document.ready內封閉。

將它從document.ready移出到它自己的腳本標記中。

<script> 
    function refresh() { 
     location.reload(); 
    } 
</script> 

The edited bin

+0

10分鐘不能接受。很好的答案。我很愚蠢,沒有意識到這一點。 –

1

你的功能是

$(document).ready(function() { 
    ... 
}); 

體內定義,因此函數名的範圍僅僅是身體。因此,您不能從聯機onXXX屬性中引用它。

它要麼使用

$("#buttonid").click(refresh); 

或定義文檔準備功能外的函數的元素相關聯。

2

refresh()函數不在全局範圍內。爲了使功能全局訪問,你可以這樣做:

window.refresh = function() { 
    location.reload(); 
}; 
1

你可以做直接作爲

<button onclick="window.location.reload()">Try refreshing!</button>