在 C# 中调用 javascript 函数链接

Call javascript function in c# actionlink

我试图将此代码重写为 C# 只是为了教育目的,我无法让它工作:(我错过了什么?

<a href="javascript:document.getElementById('logoutForm').submit()">Log off</a>

这是我的进展:

 @Html.ActionLink("Log off", "", "", new { onclick = "LogOutLink();" })

和 javascript:

 <script>
function LogOutLink() {
    document.getElementById('logoutForm').submit();
}
</script>

我错过了什么?因为我不希望 link 调用任何特定的视图或控制器,所以我只是将它们留空,如您所见,但它仍然想调用该功能

您只需要将其重写为:

@Html.ActionLink("Log off", "", "", new { }, new { onclick = "LogOutLink(); return false;" })

如果你参考这个 MSDN document,你会注意到第 4 个参数是路由值,第 5 个参数是 HTML 属性。



如果你加载了jQuery,你也可以使用jQuery来加载:

@Html.ActionLink("Log off", "", "", new { id = "LogOffId" });

在您的 javascript 中,添加:

$(function(){
    $('#LogOffId').on('click', function(){
        $('#logoutForm').submit();
    }
});