我是mvc的新手,我想知道如何从视图中获取请求的参数。
这是我的观点代码:
@using (Ajax.BeginForm("LoadPartialView", new AjaxOptions())) {
<input type="submit" value="Submit" id="submit1"/> }
我想在控制器的操作方法Submit
中获取值submit1
或id LoadPartialView
。我怎样才能做到这一点?
答案 0 :(得分:0)
在不了解视图模型或控制器方法的任何内容的情况下,您可以通过执行以下操作来获取值:
查看:
@using (Ajax.BeginForm("MyAction", new AjaxOptions())) {
<input type="submit" name="submit" value="Submit" id="submit1"/>
}
控制器:
[HttpPost]
public ActionResult MyAction(FormCollection f)
{
var submitValue = f["submit"];
}
或者,将视图键入具有submit
属性的模型,并将其传递给控制器方法,执行以下操作:
型号:
public class MyModel
{
public String Submit { get; set; }
}
查看:
@model MyModel
@using (Ajax.BeginForm("MyAction", new AjaxOptions())) {
<input type="submit" name="Submit" value="Submit" id="submit1"/>
}
控制器:
[HttpPost]
public ActionResult MyAction(MyModel model)
{
var submitValue = model.Submit;
}
后一种模型显然更具可扩展性,因为您可以将此值与其他表单值分组。
答案 1 :(得分:0)
默认情况下,您需要将name
字段的任何input
字段序列化为FormcCollection
,例如:
<input type="text" value="yourvalue" name="yourname" id="yourid"/>
然后您可以通过以下方式检索此值:
public ActionResult YourAction(FormCollection formCollection)
{
var val = formsCollection["yourname"];
//...
}