MVC - 下拉列表仅返回第一个值,原因



我在控制器中创建了一个列表:

var items = db.Message
              .Where(m => m.IDClient == id)
              .Select(c => new SelectListItem
                     {
                         Value = c.IDTexte.ToString(),
                         Text = c.Sujet,    
                     });
ViewBag.ListSujet = items;

我的观点是:

@Html.DropDownList("ListSujet", null, new {  @class = "chosen-select"})

但是当我选择一个值时,例如第三个值,它只会返回第一个值,但我不知道为什么。

您可以像这样编辑代码:

 ViewBag.ListSujet = new SelectList(db.Message.Where(m => m.IDClient == id), "IDTexte", "Sujet");

您应该在模型中传递 ItemId,并将其绑定到查看器的下拉列表中。

@Html.DropDownListFor(m => m.ItemID, new SelectList(ListSujet, "ID", "Value", "----Select----"), new { @class = "chosen-select" })

我希望它能帮助你。

相关内容

  • 没有找到相关文章

最新更新