选择jquery插件用于多选列表,不显示编辑形式的值

时间:2013-01-30 12:29:09

标签: jquery asp.net-mvc razor jquery-chosen

我使用选择的jquery插件进行多选列表。我的问题是它没有以编辑的形式显示选定的值。

我的控制器代码是

ArrayList selectedrole = new ArrayList();
foreach (var role in employee.CompanyRoles)
{
    selectedrole.Add(role.CompanyRoleId.ToString());
}

[ViewBag.CompanyRoleId = new SelectList(CompanyRole, "CompanyRoleId", "RoleName", selectedrole);]

我的观看代码

<div class="editor-label">
    Role
</div>
<div class="editor-field">
    @Html.ListBox("emprole", ViewBag.CompanyRoleId as MultiSelectList , new
                 {
                     @class = "chzn-select",
                     data_placeholder = "Choose  Role...",
                     style="width:350px;" 
                 })
</div>

和我的剧本

$(".chzn-select").chosen({ allow_single_deselect: true });

任何机构都能告诉我我做错了什么,当表格在编辑模式下显示时,它没有显示选定的值。

1 个答案:

答案 0 :(得分:0)

在下面的代码中,selectedrole应与CompanyRoles中的对象具有相同的类型。它也只允许选择一个项目。

ViewBag.CompanyRoleId = new SelectList(CompanyRoles, "CompanyRoleId", "RoleName", selectedrole);

您需要改为使用MultiSelectList

ViewBag.CompanyRoleId = new MultiSelectList(CompanyRoles, "CompanyRoleId", "RoleName", employee.CompanyRoles.ToList());