将Button从Button MVC 3 Razor Page传递给C#Controller

时间:2012-12-11 11:01:08

标签: c# asp.net-mvc asp.net-mvc-3 razor

我的cshtml页面上有两个按钮 - AgreeDisagree - 如何轻松地将值传递回我的控制器,以便我可以决定是将它们带到主页还是记录它们退出。

所以在我的cshtml页面上我有......

    <input type="button" name='Agree' value="I Agree"
                   onclick="location.href='@Url.Action("DoAccept", "Home")'" />
    <input type="button" name='Delete' value="I Disagree"
                   onclick="location.href='@Url.Action("DoAccept", "Home")'" />

所以在我的家庭控制器中,我有一个DoAccept方法如下:

    public ActionResult DoAcceptTC()
    {
       //if( buttom clicked was Agree)
        return RedirectToAction(VIEW_HOMEPAGE);
       //else
      //return Logout page..  
    }

所以我的问题是如何轻松地将值返回到控制器方法?

2 个答案:

答案 0 :(得分:3)

使用没有html表单托管它们的输入没有多大意义。您可以使用表单或简单链接

//view
@using(Html.BeginForm("DoAccept"))
{
     <button name="decision" value="agree">I Agree</button>
     <button name="decision" value="disagree">I disagree</button>
}

//controller
public ActionResult DoAcceptTC(string decision)
{
    //decision == "agree"
}

答案 1 :(得分:2)

您必须将参数和Url.Action一起发送到控制器,以便您能够轻松执行操作。以下链接可以帮助您。

Url.Action with params