[英]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.