如何将actionlink参数传递给控制器​​MVC 5?

时间:2017-02-22 11:30:47

标签: asp.net-mvc

如何将NextPrevious值传递给控制器​​?

现在NextPrevious始终为空

[HttpPost]
    public ActionResult PremiumUserRegistration(PartnersVM partnersVM, string NextPrevious)
    {
        if (NextPrevious != null)
        {
        }
    }

查看和.js文件,

$('.btnActionNext').click(function () {  
    $(this).closest('form')[0].submit();  
});  
@Html.ActionLink("Next >>", "PremiumUserRegistration", new { controller = "UserRegister" }, new { NextPrevious = "value", @class = "btnActionNext" , onclick = "return false;" })

请帮帮我......

2 个答案:

答案 0 :(得分:1)

添加隐藏:

<input type="hidden" name="Action" />

确保它在您的表单上。接下来,在您的点击处理程序上,执行:

$('.btnActionNext').click(function () {  
    $("#Action").val("NEXT");
    $(this).closest('form')[0].submit();  
});

在发布操作中,添加string Action

    [HttpPost]
    public ActionResult PremiumUserRegistration(string Action, PartnersVM partnersVM)
    {
        if (Action == "NEXT")
        {
        }
    }

答案 1 :(得分:1)

如果您要提交表单,请将其添加为隐藏字段

@Html.Hidden("NextPrevious", value)

否则,您在ActionLink方法的错误位置输入了“NextPrevious”值。它应该在routeValues内,而不是htmlAttributes。 正确的方法是:

@Html.ActionLink("Next >>", "PremiumUserRegistration", new { controller = "UserRegister", NextPrevious = "value" }, new { @class = "btnActionNext", onclick = "return false;" })