Ajax.ActionLink 在表中的标题后插入?
Posted
技术标签:
【中文标题】Ajax.ActionLink 在表中的标题后插入?【英文标题】:Ajax.ActionLink insert after header in a table? 【发布时间】:2011-08-11 07:41:11 【问题描述】:我有一个<table>
,它有一个标题行。我正在尝试在标题行下添加一个项目,但似乎无法向 ActionLink
函数描述此意图。
InsertionMode.InsertBefore
将标题行的 ID 指定为更新目标只是将行放在表的顶部,Replace
替换表的标题,InsertAfter
实际上在标题行中放置了一个新行-- 这显然是无效的。
有什么方法可以指定我想在标签之后或之前追加一些 html 吗?
提前致谢。
【问题讨论】:
【参考方案1】:使用 Jquery。
$("tableid").after("<th></th>").append("whatever");
【讨论】:
是的,我当然可以在 jquery 中使用$.ajax()
执行此操作,但我的问题是如何在 MVC 中使用 Ajax.ActionLink 执行此操作。【参考方案2】:
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());
【讨论】:
以上是关于Ajax.ActionLink 在表中的标题后插入?的主要内容,如果未能解决你的问题,请参考以下文章