2011-03-06 192 views
7

我有一個局部視圖,我想要使用jQuery在主視圖中呈現它。jquery加載與asp.net MVC局部視圖

這裏是我很編碼jQuery的:

$(document).ready(function() { 
     $("#dvGames").load("/LiveGame/Partial3"); 
}); 

其中作爲控制器的方法是這樣的:

public ActionResult Partial3(DateTime gameDate) 
{ 
    return View("Partial3"); 
} 

我沒有看到任何東西。我試過

<% Html.RenderPartial("Partial3"); %> 

它的工作原理,但我想過濾部分視圖中的數據,所以我使用jquery加載方法。

+0

正在爲您的操作方法調用?如果設置了斷點,你是否會遇到斷點? – rcravens 2011-03-06 12:59:22

回答

15

你的控制器動作,您需要調用AJAX請求時,需要提供一個DateTime參數:

$(function() { 
    $('#dvGames').load(
     '<%= Url.Action("Partial3", "LiveGame") %>', 
     { gameDate: '2011-03-06' } 
    ); 
}); 
+4

+1 - 另外,我認爲ActionResult Partial3應該返回partialview(),而不是視圖()!? – 2011-03-06 15:44:19

0

嘗試讓框架創建URL。使用

<%= Url.Action("LiveGame","Partial3") %> 
+1

它不會進入控制器操作。並使用<%= Url.Action(「LiveGame」,「Partial3」)%>並在屏幕上打印:「/ Partial3/LiveGame」。我需要加載部分視圖。 – DotnetSparrow 2011-03-06 13:10:04

+0

而不是在加載中對URL進行硬編碼,請嘗試使用URL.Action方法。你還提供gameDate參數嗎? – rcravens 2011-03-06 13:16:44

+0

@ rcravens我用上面提到的url.action,但是它打印的是數值而不是局部視圖。我需要提供gameDate參數。我怎樣才能做到這一點 ? – DotnetSparrow 2011-03-06 14:00:57