【发布时间】:2017-06-10 05:45:00
【问题描述】:
尝试将在本例中为 studentid 的选定值传递给 BeginForm。
查看
@using (Html.BeginForm("DDSubmit", "Home",new { id=Model.studentID}, FormMethod.Post))
{
@Html.DropDownListFor(m => m.studentID, Model.DDList, "Please Select",new { onchange = "this.form.submit();" })
}
控制器动作
public ActionResult DDSubmit(int id)
{
var info = (from r in entity.STUDENTS where r.Student_Id == id select r).ToList();
return View(info);
}
型号
public class DDModel
{
public List<SelectListItem> DDList { get; set; }
public int studentID { get; set; }
public string studentName { get; set; }
}
【问题讨论】:
-
那么你的问题是什么?如果您的 POST 方法有模型的参数,那么它的
studentID属性将与所选选项的值绑定 -
无论我从下拉列表中选择什么项目,我的操作方法总是为零
-
那么它可能是一个字段而不是一个属性。您还没有显示任何相关代码(您的模型或控制器方法!)
-
我已经添加了模型和控制器动作
-
这毫无意义。您已经展示了一个 GET 方法,该方法返回一个集合和一个视图,该视图具有一个显然不是集合的模型,因此代码甚至无法编译。而且您还没有显示 POST 方法(并且不相关,但删除了您的
BeginForm()中无意义的new { id=Model.studentID})
标签: asp.net asp.net-mvc asp.net-mvc-4 asp.net-mvc-3