我正在尝试提交单击控制器方法的提交按钮的值,但方法中的参数未绑定到单击按钮的值。
查看
@using (Html.BeginForm())
{
....
<input type="submit" name="test" value="TEST" />
<input type="submit" name="test" value="TEST22" />
}
控制器
[HttpPost]
public ActionResult Index(string action)
{
// the value of action is null
....
return View();
}
答案 0 :(得分:1)
表单将提交成功控件的名称/值对(基于name
和value
属性)。对于<input type="submit" ... />
,它将是单击的按钮的值(不提交其他提交按钮的值)。
在您的情况下,您为按钮提供name="test"
属性,这意味着表单将提交test: TEST
或test: TEST22
(取决于您点击的按钮),因此POST方法必须是
public ActionResult Index(string test)
或者,您可以将每个按钮更改为name="action"