2011-04-23 82 views
3

我有一個<table>有一個標題行。我試圖在標題行下添加一個項目,但似乎沒有辦法將此意圖描述爲ActionLink函數。Ajax.ActionLink插入表中的標題之後?

InsertionMode.InsertBefore指定爲更新對象只是把該行的表頂部的標題行的ID,Replace替換表的標題,InsertAfter其實是把標題行中新行 - 這顯然是無效。

有沒有什麼辦法可以指定我要追加一些HTML之後或之前的標籤?

在此先感謝。

回答

4

AFAIK沒有辦法實現這樣的行爲只有AjaxOptions類的屬性。一種方式是認購OnSuccess方法和做手工插入:

@Ajax.ActionLink("click me", "someAction", new AjaxOptions { OnSuccess = "success" }) 

success功能:

<script type="text/javascript"> 
    function success(result) { 
     $('table').after('th').append(result); 
    } 
</script> 

,或者如果你正在使用MicrosoftAjax你需要調用get_data方法來獲取從ajax調用返回的結果:

function success(result) { 
    $('tableid').after('th').append(result.get_data()); 
} 
+0

真棒,謝謝! – 2011-05-23 20:14:35

0

使用jquery。

$("tableid").after("<th></th>").append("whatever"); 
+0

是的,當然我可以使用'$ .ajax()'在jquery中做到這一點,但我的問題是如何在MVC中使用Ajax.ActionLink執行此操作。 – 2011-04-23 01:55:54