select2多个节目未在控制器中选择

时间:2016-05-23 06:59:38

标签: c# asp.net-mvc-5 selectlistitem

我在c#mvc5中使用select2。每当我在多个列表中选择一个角色时,我的所有值都将传递给控制器​​并显示为选定的假(即使我选择列表中的一个角色)。

这是我的观点

@Html.DropDownListFor(u => u.RoleId, Model.Roles, new { @class = "select2-multiple form-control", @data_placeholder = "-- Please select your role(s) --", id = "ddlRole", name = "ddlRole", multiple = "multiple"})

这是我的模特

public IEnumerable<SelectListItem> Roles { get; set; }

这是我的控制器

foreach (var roles in model.Roles)
{
     if (roles.Selected == true) { 
         Database.CreateMultipleRoleForUser(userid, model, roles.Value);
     }
}

此处的图片显示roles.Selected上选定的假,即使我选择了该角色 - &gt; 点击这个!
enter image description here

1 个答案:

答案 0 :(得分:0)

我设法通过将数组int selectedRole添加到我的模型和新的选择列表中来解决它。

@Html.DropDownListFor(u => u.selectedRole, new SelectList(Model.Roles, "Value", "Text", Model.selectedRole), new { @class = "select2-multiple form-control", @data_placeholder = "-- Please select your role(s) --", id = "ddlRole", name = "ddlRole[]", multiple = "multiple" })