【问题标题】:html.actionlink values in jqueryjquery 中的 html.actionlink 值
【发布时间】:2012-07-20 08:56:18
【问题描述】:

有什么方法可以在 jquery 中检索 actionlink 的值吗?

例如:我想要来自

的值 4 和“abc”

html.actionlink("action","controller",new {id=4,name="abc"},new {@class="a"}) 在 jquery 中。

谢谢。

【问题讨论】:

    标签: jquery model-view-controller


    【解决方案1】:

    没有可从 javascript 访问的 ActionLink 等效项。一种可能的解决方案是基于字符串替换。您准备链接并通过您的视图发送它。然后在 javascript 中替换它的动态部分。看到这个答案:

    ASP.NET MVC ActionLink in jquery-tmpl template

    【讨论】:

    • 实际上我将数据作为 id 传递并访问 jqeury 中的类以检索值。有点适合我的情况! @html.actionlink("link","action","controller",null,new{@class="a",@id=item.id})
    【解决方案2】:

    Html.ActionLink 将在页面上呈现一个实际的链接,因此您所能做的就是使用 jQuery 读取该链接的href 属性。

    $('.a').attr('href');
    

    【讨论】:

    • 返回链接。但我需要的是链接中的 ID 和名称。我需要将这些数据传递给控制器​​并接收结果以将其加载到分区中。
    • 我可以搜索子字符串并使用它,但还有其他方法可以做到这一点吗?
    • 您有生成的 URL 示例吗?如果为空,则可能是您的代码有问题。
    • 好的,所以根据您的操作链接,您应该将<a href="http://localhost:1042/chmenu/edit?oid=1&name=abc" class="a">text</a> 呈现给浏览器。因此,上面的 jQuery 应该可以工作,但这取决于您何时调用它。将alert($('.a').attr('href')); 添加到您的ready 函数中。
    • 另外,请参阅msdn.microsoft.com/en-us/library/dd493068.aspx 以了解正确用法,因为您的示例不包含用于创建链接的文本。
    【解决方案3】:

    是的,如果你知道它的类名或id,你可以得到动作链接的所有属性值,

    如果您知道操作链接类,以下是如何使用 jquery 执行此操作的示例,

        <script type="text/javascript">
            $(document).ready(function () {
              // Get id of action Link
              var id = $(".a").attr('id');
              // Get href of link
              var hreflink = $(".a").attr('href');
              // Get href of title
              var linktitle = $(".a").attr('title');
              alert(id);
              alert(hreflink);
              alert(linktitle);
            });
        </script>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-09-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多