我有我的_Layout.cshtml中包含的部分視圖。它只是一個基於我的系統狀態改變圖像的JavaScript函數。我不需要重新加載任何數據,我不需要去控制器的任何代碼,我只需要重新加載該部分視圖。刷新MVC中的部分視圖3
我嘗試了很多我在這裏找到的例子,但無法讓他們工作。無論如何,我覺得他們對我所做的事情太複雜了。任何指導將不勝感激。
感謝,
史蒂夫
我有我的_Layout.cshtml中包含的部分視圖。它只是一個基於我的系統狀態改變圖像的JavaScript函數。我不需要重新加載任何數據,我不需要去控制器的任何代碼,我只需要重新加載該部分視圖。刷新MVC中的部分視圖3
我嘗試了很多我在這裏找到的例子,但無法讓他們工作。無論如何,我覺得他們對我所做的事情太複雜了。任何指導將不勝感激。
感謝,
史蒂夫
如果部分被裝入佈局直接再有就是刷新它沒有簡單的方法,因爲它基本上完全渲染頁面的一部分。
最好的辦法是使用$.load
或任何你可用的等價物,通過點擊一個控制器方法並將結果渲染到容器(如div)來渲染局部。您必須在通過觀察document.ready
或類似的東西加載佈局本身的腳本內執行此操作。一旦你有了這些,那麼通過按照你需要的次數按控制器方法來繼續重新加載或刷新內容是微不足道的。例如jQuery中:
$(document).ready(function() {
RefreshPartial();
window.setInterval(RefreshPartial, 10000);
});
function RefreshPartial() {
$('#container').load('/some/controller/endpoint', {parameters});
}
這將調用控制器的方法,以及設置與#container
標識的元素的內部內容。您可以根據需要多次撥打RefreshPartial
。
部分視圖只存在於服務器上。 「刷新」部分的唯一方法是返回到服務器再次獲取它。
很顯然,你必須在需要提神的部分做些事情。無論如何,都應該從javascript中調用來進行刷新。
幾乎是一個正在改變幕後價值的變量。我的部分需要做的是加載一個圖像作爲源的值。簡單地說。 – SteveInTN
好的,太好了!這讓我走了大半路。現在,如何在一個定時器上設置相同的交易? – SteveInTN
@SteveInTN我編輯了'document.ready'處理程序,以顯示如何每10秒調用一次刷新方法。 – kprobst
謝謝kprobst! – SteveInTN