ASP.NET MVC 2 Html.ActionLink 与 JavaScript 变量

发布于 2024-10-18 13:15:24 字数 159 浏览 0 评论 0原文

<%: Html.ActionLink("Cancel", "Edit", "Users", new {id = " + userID + "  }, null) %>

在上面的代码中,userId 是一个变量。这个语法不对,应该怎样写呢?

<%: Html.ActionLink("Cancel", "Edit", "Users", new {id = " + userID + "  }, null) %>

In the code above userId is a variable. This syntax is not right, what should it be?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

长不大的小祸害 2024-10-25 13:15:24

您不能使用在服务器上运行的 HTML 帮助程序来使用客户端上已知的 Javascript 变量。因此,您需要使用您在服务器上配置的信息生成 URL。所以你在服务器上能做的就是这样:

<%: Html.ActionLink("Cancel", "Edit", "Users", null, new { id = "mylink" }) %>

然后我想在客户端你正在做一些javascript(最好是jquery),然后当你想使用这个url和你计算出的userID来查询服务器时客户。例如,您可以通过附加一些 id 来动态修改链接操作:

$(function() {
    $('#mylink').click(function() { 
        var userId = ...
        this.href = this.href + '?' + userId;
    });
});

或者如果您想 AJAX 化此链接:

$(function() {
    $('#mylink').click(function() { 
        var userId = ...
        $.ajax({
            url: this.href,
            data: { id: userId },
            success: function(result) {
                ...
            } 
        });
        return false;
    });
});

You cannot use an HTML helper which is run on the server to use a Javascript variable which is known on the client. So you need to generate your URL with the information you dispose on the server. So all you can do on the server is this:

<%: Html.ActionLink("Cancel", "Edit", "Users", null, new { id = "mylink" }) %>

Then I suppose that on the client you are doing some javascript (ideally with jquery) and a moment comes when you want to query the server using this url and the userID you've calculated on the client. So for example you could modify the link action dynamically by appending some id:

$(function() {
    $('#mylink').click(function() { 
        var userId = ...
        this.href = this.href + '?' + userId;
    });
});

or if you wanted to AJAXify this link:

$(function() {
    $('#mylink').click(function() { 
        var userId = ...
        $.ajax({
            url: this.href,
            data: { id: userId },
            success: function(result) {
                ...
            } 
        });
        return false;
    });
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文