2016-09-14 86 views
0

我有我加載在使用局部視圖:自動刷新局部視圖使用jQuery

<div class="row"> 
    <div class="col-xs-12"> 
     @Html.Action("NewFaults", "Fault") 
    </div> 
</div> 

這最終加載名爲_NewFaults.cshtml的局部視圖,我想刷新每10秒(例如)以定期顯示出現任何新的錯誤。我一直在網上尋找如何做這件事一段時間,但我發現的所有例子都非常具體到他們的例子,並不明顯如何適應它們。

有人可以幫助我嗎?

+0

[jQuery.load()](http://api.jquery.com/load/)和[JavaScript的定時器(https://developer.mozilla.org/en- US/Add-ons/Code_snippets/Timers) –

+0

在JQuery上使用'setInterval()'函數。 –

回答

1

按照註釋,使用JavaScript計時器

var timer = setInterval(YourFunction, 10000); 

其中yourFunction中做一個AJAX調用您的控制器的局部視圖。

$.ajax({ 
    url: "@Url.Action("Action","Controller")", 
    type: 'POST', 
    dataType: 'html',   
    cache: false, 
    success: function (html) { 
     //show it on page 
    } 
}); 

這樣的方法

public PartialView Action() 
{ 
    return PartialView(); 
} 
+0

感謝您的幫助。我應用了上面的代碼,仍然有問題。後來我發現控制器的行爲被定義爲僅限於兒童行動,這是停止呼叫。刪除它使其工作。 –

0

setInterval()使用功能。

function myFunction() { 
    setInterval(function(){ window.location.href='redirectURL.php' }, 10000); //Referesh particular page 
//OR  
    setInterval(function(){ window.location.reload() }, 10000); //Referesh curent page  
    } 

http://www.w3schools.com/jsref/met_win_setinterval.asp