如何从@ Html.ActionLink param routeValues调用jquery函数

时间:2014-08-23 10:13:28

标签: jquery razor

我有一个文本框和一个点击按钮,它应该检索文本框中设置的值并将其传递给控制器​​。我试图通过调用一个JQuery函数来做到这一点,该函数返回文本框的值并传递为routevalues参数。我知道这不起作用,但我的问题是有一种方法来修改下面的代码来实现这个目的吗?基本上我想知道如何在ActionLink调用中插入getValue函数。

<script type="text/javascript">
$(function () {

    var getValue = function () {

        return $("#addtoset").val();
    };
});
</script>

@Html.TextBox("addtoset", "", htmlAttributes : new { @id = "addtoset", @class = "col-sm-10" })
@Html.ActionLink("Add To Set", "AddToSet", routeValues: new { amount = getValue()}, htmlAttributes : new { @id="linkSet", @class = "col-sm-2" }) 

1 个答案:

答案 0 :(得分:1)

将onclick处理程序添加到ActionLink调用的htmlattributes部分,如下所示:

@Html.ActionLink("Add To Set", "AddToSet", routeValues: new { amount = getValue()}, htmlAttributes : new { @id="linkSet", @class = "col-sm-2", onclick = "getValue" })

但如果这是你的所有代码,你需要做的不仅仅是为了让它起作用:)

如果您希望链接阻止导航,请将preventDefault()添加到您的callbackFunction

function callbackFunc(e) {
    e.preventDefault();
    // work here
}