【发布时间】:2016-08-17 01:53:03
【问题描述】:
所以我的cshtml中有这个...
@Html.ListBoxFor(model => model.RoleHelper.roleIDs, ViewBag.Roles as MultiSelectList, new { @id = "roles", @name="roles", @class = "chosen-select", data_placeholder = "Select Role..." })
我已经通过使用这个来激活选择:
<script> $(".chosen-select").chosen({ width: "100%", display_selected_options: false });</script>
然后我有一个按钮:
<input type="button" onclick="selAll()" id="select_all" name="select_all" value="Select All">
调用这个函数:
<script>
function selAll()
{
$('#roles option').prop('selected', true).trigger('chosen:updated');
alert("test");
}</script>
基本上我想要做的是当单击按钮时,我的角色多选框中的所有角色都被选中。问题是,我选择的启用多选框没有反映这种变化。我可以看到所有选项都已选择,但选择不会更新。 (通过更新我的意思是,未显示选项)
当我尝试动态填充我的一个多选框的选项时,Chosen 也没有更新。这是在我调用 .trigger('chosen:updated') 之后。
谁能告诉我我做错了什么?以及如何解决这个问题...
顺便说一句:警报有效意味着 $('#roles option').prop('selected', true).trigger('chosen:updated');调用成功...
【问题讨论】:
标签: javascript jquery jquery-chosen