0

複数選択リストに選択した 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 });

フォームが編集モードで表示されているときに、選択した値が表示されないという間違ったことを教えてください。

4

1 に答える 1

0

以下のコードでselectedroleは、 のオブジェクトと同じタイプであることが期待されますCompanyRoles。また、選択できる項目は 1 つだけです。

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

MultiSelectList代わりに使用する必要があります。

ViewBag.CompanyRoleId = new MultiSelectList(CompanyRoles, "CompanyRoleId", "RoleName", employee.CompanyRoles.ToList());
于 2013-01-31T09:56:22.023 に答える