Asp.net mvc 调用ajax.actionlink的javascript函数
我有以下ajax.actionlink。我想将单击事件添加到此actionlink。我该怎么做Asp.net mvc 调用ajax.actionlink的javascript函数,asp.net-mvc,ajax,asp.net-mvc-2,actionlink,Asp.net Mvc,Ajax,Asp.net Mvc 2,Actionlink,我有以下ajax.actionlink。我想将单击事件添加到此actionlink。我该怎么做 <%= Ajax.ActionLink("text", "textaction", new { param = 1}, new AjaxOptions { OnSuccess = "updatePlaceho
<%= Ajax.ActionLink("text", "textaction", new { param = 1}, new AjaxOptions
{
OnSuccess = "updatePlaceholder",
UpdateTargetId = "result"
})%>
单击事件处理程序已添加到此链接,因为您正在使用Ajax.ActionLink帮助程序方法。此单击事件处理程序将取消默认操作,并向此链接指向的地址发送AJAX请求。您可以尝试设置该选项 如果您在项目中使用jquery,则可以使用普通链接,而无需Ajax.ActionLink帮助程序将所有javascript添加到标记中:
这种方式将在标记和javascript文件之间实现清晰的分离。由于javascript将位于单独的文件中,这些文件将由客户端浏览器缓存,因此您将减少带宽。您需要更改代码: $'mylink'。单击函数{ e、 防止违约;
…想做什么就做什么如果你感兴趣,我有一个完整的例子,说明如何按照Darin在我的博客中的建议,将链接的点击事件与jQuery连接起来:上面提到的ActionLink+jQuery解决方案对我不起作用。它总是导航到页面,jQuery无法正确处理。有没有猜测?@Zohaib,在我最初的回答中我忘记通过单击回调返回false来取消链接的默认操作。我已对其进行了更新以修复该问题。
<%= Html.ActionLink(
"text",
"textaction",
new { param = 1 },
new { id = "mylink" })
%>
$(function() {
$('#mylink').click(function() {
// here you could execute some custom code
// before sending the AJAX request
$('#result').load(this.href, function() {
// success function
});
return false;
});
});