2013-03-28 91 views
0

我有這使得一個Ajax調用,並返回一個結果,並完美地工作。更新間隔/部分查看間隔

@foreach (var fighter in Model.Fighters) 
{ 
@Ajax.ActionLink(fighter.FirstName + " " + fighter.LastName, "ShowResults",new   {id  =fighter.FighterID }, new AjaxOptions { HttpMethod = "get", InsertionMode = InsertionMode.Replace, OnSuccess = "SuccessFunction", UpdateTargetId = "results" }) 
} 
<div id="results"> 
@Html.Partial("Partial1", Model) 
</div> 

[HttpGet] 
    public ActionResult ShowResults(int id) 
    { 
     ViewBag.Id = id; 
     Fight fight = db.Fights.Find(id); 
     if(Request.IsAjaxRequest()) 
     { 
      ViewBag.Message = "The ID is: " + id; 
      return PartialView("Partial1", fight); 
     } 
     return View(fight); 
    } 

但是我試圖做同樣的事情,但部分視圖重新加載設定的時間間隔。我修理這樣做:

$(document).ready(function() { 

    $("#round").load("/Fight/ShowResults"); 

    setInterval(function() { 
     $("#results").load("/Fight/ShowResults"); 
    }, 100000); //Refreshes every 30 seconds 

    $.ajaxSetup({ cache: false }); //Turn off caching 
}); 
</script> 

但似乎並沒有做任何事情。有任何想法嗎?

+0

100秒緊挨2分鐘 –

+0

是的,這是一個錯字。我在應用程序上嘗試了1秒,沒有發生任何事情。 –

+0

先嚐試設置你的ajax。也有API的掃描;我相信一些別名的Ajax方法會忽略設置,並且負載可能就是其中之一。 –

回答

0

我解決了這個問題,我有一些問題需要解決。在問之前,我應該仔細觀察它。之所以不能運行是因爲我需要在佈局頁面中創建一個腳本部分,因爲我試圖運行RenderBody部分的這個腳本。