繁体   English   中英

如何将jQuery函数结果用作html.actionlink中的参数

[英]How to use jquery function result as parameter in html.actionlink

我有简单的@html.actionlink("action", "controller", new {id = somevalue})

和jQuery函数

<script>
    function getValue() {
        var p = $("#EditId").val();
        return p;
    }
</script>

如何在ActionLink中使用此函数的返回值代替“ somevalue ”?

尝试这个:

@html.actionlink("action", "controller", new {id = somevalue,@class="link"})

<script>
function getValue() {
    var p = $("#EditId").val();

    return p;
}
$(document).ready(function(){

 $(".link").attr('id')=getValue();
  });
   </script>

要么:

 $(".link").href.replace("somevalue", getValue());

正如您描述的那样,您尝试做的事情是不可能的,因为@ Html.ActionLink是服务器端代码,当JS涉及@ Html.ActionLink完成其工作并消失时,将呈现一个标记

另外,当您尝试更改element的ID时,以后也可能无法访问(不确定)。

解决方法是,将带有JS功能的链接与占位符一起广告。 请在下面尝试并告诉我它是否正在工作

代替@ Html.ActionLink使用以下内容;

<div id="linkPlaceHolder"></div>

加载时使用以下

$(function(){
 var actionUrl = @Url.Action("action", controller); // you get the url of action

 $("#linkPlaceHolder").replaceWith("<a href='"+actionUrl+"' id='" + getValue() + "'>Text</a>")
});

这应该工作,如果不是,或者不是您想要的,我们就在这里。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM