2017-08-14 256 views
0

努力从下拉列表中获取一个值,并将其传递到我的控制器以便插入数据库。 它从下拉菜单中的每个项目开始。查看ASP.NET MVC绑定值

public class selectListUrgencyNum 
{ 
    public string Text { get; set; } 
    public string Value { get; set; } 
} 

然后在我的视图模型我创建这些对象的列表,这样..

public class createViewModel 
{ 
    public Change Changevm { get; set; } 

    public List<RequestType> rTypes { get; set; } 

    public List<selectListUrgencyNum> listUrgency { get; set; } 
} 

最后是我的控制器我填充在下拉列表显示该列表。

public ActionResult Create() 
    { 

     var urgNums = new List<selectListUrgencyNum>(); 
     for(int i = 1; i < 6; i++) 
     { 
      urgNums.Add(new selectListUrgencyNum() { Text = i.ToString(), Value = i.ToString() }); 
     } 

     var viewModel = new createViewModel 
     { 
      listUrgency = urgNums 
     }; 



     return View(viewModel); 
    } 

我刚刚使用了1 - 5来使它更容易理解。

我的看法像这样创建ddl。

<div class="form-group"> 
     @Html.LabelFor(model => model.Changevm.UrgencyNum, htmlAttributes: new { @class = "control-label col-md-2" }) 
     <div class="col-md-2"> 
      <select class="form-control" id="select"> 
       <option> 1 = Least Urgent</option> 
       @foreach(var item in Model.listUrgency) 
       { 
        <option>@item.Text</option> 
       } 
       </select> 
      @*How do I grab the value of what is selected??*@ 
      @Html.ValidationMessageFor(model => model.Changevm.UrgencyNum, "", new { @class = "text-danger" }) 
     </div> 

所以我不知道如何获得所选择的下拉选项是什么价值,让我插入我可以访问它。可能是隐藏的?

如果我使用隐藏的,它会看起来如何?

如果已经回答,请链接..

+0

选择当你这样做,值将被回传那里。在您的选择上设置名称属性。 ID是为jQuery,名称是表单帖子。 –

+0

你真的需要学习基础知识。要生成'