我正在将Bootstrap Multiselect控件用于页面上的多个选项,并且为了统一性,将其用于接受多个选项的项目以及仅接受单个项目的项目(单选按钮)。用户完成一个条目并保存后,页面的这一部分暂时隐藏,并显示不同的部分(虽然我认为不相关。)单击按钮后,再次显示此部分,并且应该使用多选控件更新以显示新数据。 (这是在AJAX代码中发生的。)
问题在于,当控件关闭时,单选按钮的正确选项会显示,当您将其打开时,该项目和列表中的第一个项目都会被选中。实际上,经过几轮之后,可以选择两个以上的按钮。
我尝试过多种代码来正确地重置内容。这是生成这些单选按钮样式控件之一的HTML / PHP代码:
<div class="form-group">
<label class="control-form-label col-md-offset-1 col-md-1" for="urgency">When</label>
<div class="col-md-9">
<select id="urgency" required>
<?php
$urgency = getdata("GetActionUrgencies", "", "Couldn't retrieve list of urgency.<br/>");
while ($obj = mysqli_fetch_object( $urgency)) {
echo "<option value='".$obj->UrgencyDesc."' id='".$obj->iID."'>".$obj->UrgencyDesc."</option>";
}
?>
</select>
</div>
</div>
这是我在AJAX成功方法中使用的javascript来更新它:
$('#urgency').multiselect('deselectAll',false);
$('#urgency').multiselect('select', obj.UrgencyDesc);
我也尝试在此代码之后调用multiselect('refresh'),但它不会改变任何内容。
有什么想法吗?
答案 0 :(得分:1)
我有一个类似的问题,我用过:
$('#yourSelect')。val([])。multiselect('refresh');
这对我有用。
答案 1 :(得分:0)
来自Bootstrap-Multiselect文档:“目前,在调用.multiselect('selectAll',justVisible)之后,需要手动调用.multiselect('updateButtonText')。”
你试过这个吗?