Bootstrap multiselect单选按钮选择了多个选项

时间:2017-08-05 22:40:12

标签: jquery ajax bootstrap-multiselect

我正在将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'),但它不会改变任何内容。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

我有一个类似的问题,我用过:

$('#yourSelect')。val([])。multiselect('refresh');

这对我有用。

答案 1 :(得分:0)

来自Bootstrap-Multiselect文档:“目前,在调用.multiselect('selectAll',justVisible)之后,需要手动调用.multiselect('updateButtonText')。”

你试过这个吗?