【问题标题】:pass the selected value of Html.DropDownList to controller将 Html.DropDownList 的选定值传递给控制器
【发布时间】:2021-11-12 00:31:15
【问题描述】:

我的视图页面中有一个下拉菜单。由于下拉列表只有两个值并且不会更改,因此我们决定创建静态下拉列表。

@Html.DropDownList("RelationshipWithFather", new List<SelectListItem>()
 {
   new SelectListItem() { Text= "son", Value = "son" },
   new SelectListItem() { Text= "daughter", Value = "daughter" }
 }, "relationship...", new { @class = "form-control" })

如何传递这个RelationshipWithFather下拉选择的值来创建控制器方法。

public ActionResult Create(PatientInfo vdm_)
        {
            if (ModelState.IsValid)
            {
                PatientInfo vdm = new PatientInfo();
                vdm.relationshipWithPatient = // selected value of RelationshipWithFather
            
            
            }
        }

我必须将所选下拉列表的值设置为模型类的relationshipWithPatient 属性。

【问题讨论】:

标签: asp.net asp.net-mvc asp.net-mvc-4


【解决方案1】:

尝试使用 DropDownListFor

@model PatientInfo
....

@{
 var items= new List<SelectListItem>()
 {
   new SelectListItem() { Text= "son", Value = "son" },
   new SelectListItem() { Text= "daughter", Value = "daughter" }
 };
}

@using (Html.BeginForm()) {

@Html.DropDownListFor (model=>model.relationshipWithPatient, items , "relationship...", new { @class = "form-control" })

}

或者我更喜欢

<select class="form-control" asp-for="@Model.relationshipWithPatient" asp-items="@items"></select>

动作

public ActionResult Create(PatientInfo vdm)
{
    if (ModelState.IsValid)
    {
      var selected=  vdm.relationshipWithPatient; //selected value of RelationshipWithFather
.....
   }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-27
    • 2019-07-06
    • 2020-01-11
    • 1970-01-01
    相关资源
    最近更新 更多