asp.net mvc 中的ajax

在目前的asp.net mvc版本中我们可以使用Ajax.ActionLink,Ajax.RouteLink,Ajax.Form来实现ajax更新操作。

如果Ajax.ActionLink可以触发action那么我们肯定也可以在JS中实现调用action。

观察下列代码

<%= Ajax.ActionLink("ajax link","AjaxAction",new AjaxOptions(){InsertionMode=InsertionMode.InsertAfter}) %>

 它最终生成的html代码为

<a href="/Users/AjaxAction" onclick="Sys.Mvc.AsyncHyperlink.handleClick(this, new Sys.UI.DomEvent(event), { insertionMode: Sys.Mvc.InsertionMode.insertAfter });">ajax link</a>

那么我们是不是可以通过在js中调用Sys.Mvc.AsyncHyperlink.handleClick来实现触发action的目的呢。

答案是肯定的。

我在js函数中写了如下代码

Sys.Mvc.AsyncHyperlink.handleClick({ href: '/Users/ChangeWeight'}, new Sys.UI.DomEvent(event), { insertionMode: Sys.Mvc.InsertionMode.InsertAfter });
最终触发了action    "ChangeWeight".

但是目前我还不知道这种方法如何来传参给action。

还请高手指点。

原文地址:https://www.cnblogs.com/tianyamoon/p/1287120.html