Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 调用ajax.actionlink的javascript函数_Asp.net Mvc_Ajax_Asp.net Mvc 2_Actionlink - Fatal编程技术网

Asp.net mvc 调用ajax.actionlink的javascript函数

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。我想将单击事件添加到此actionlink。我该怎么做

<%= 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;
    });
});