2011-05-19 67 views
0

我試圖在點擊任何鏈接時調用我的子操作。基本上我知道的是Child Actions被@ Html.Action()方法調用。但是這個方法會在我們的視圖中自動調用。我正在嘗試使用@ Html.ActionLink(),但這不起作用。有沒有什麼方法可以在點擊任何鏈接時調用我們的Child操作。單擊鏈接時調用子操作

在此先感謝。

回答

0

您可以使用AJAX鏈接來調用動作並將部分結果注入到DOM中。例如假設您有以下作用:

public ActionResult Foo() 
{ 
    return PartialResult(); 
} 

你可以寫一個動作鏈接和一個div來保存結果:

@Html.ActionLink("click me", "someaction", "somecontroller", null, new { id = "mylink" }) 
<div id="result"></div> 

,然後在一個單獨的JavaScript文件AJAXify此鏈接:

$(function() { 
    $('#mylink').click(function() { 
     $('#result').load(this.href); 
     return false; 
    }); 
}); 
+0

嗨@Darin。謝謝您的幫助。但是,你能提出一些我不需要處理Ajax的方法嗎?因爲如果我想使用Ajax,那麼我現在可能會在我的情況下使用Child操作。 – Jash 2011-05-19 06:26:41

+0

@Jash,如果您不想在點擊鏈接時使用AJAX,則會執行完整的回發到服務器。因此,在結果視圖中,您可以使用Html.Action包含子動作。 – 2011-05-19 06:28:11