Bootstrap-Select 刷新随机工作

问题描述

现在我知道这个问题已经被问到了很多,但是在动态地向我的选择添加值后,我似乎无法使引导选择正确刷新。

我正在使用 bootstrap-select 1.13.14。一旦我的页面被加载,它就会调用这个 loadFunctionTitles() 函数,它将 1) 清空我的选择框选项;然后 2) 从 JS 数组中附加适当的选项...

视觉本质上是这样的:

enter image description here

当我单击任一函数类型,甚至单击我的删除图标以清除所选值时,选择列表框刷新没有问题。但是,当我的页面加载时,我会随机“刷新”。在查看检查模式时我选择的值总是显示正确的值,但由于某种原因,刷新似乎并不总是工作!它几乎看起来是随机的:有时它会正确选择我给定的值,有时不会......

我的JS代码

// pre-load function titles
$(document).ready(function(){
    loadFunctionTitles( funcTypeID,funcPreSelTitleID );
});

/**
 * loadFunctionTitles()
 * Loads function titles based on type id (Artistic,Technical,etc.)
 * @param int typeid load function titles for given type id
 * @param int preSelId pre-select list value
 */
function loadFunctionTitles(typeid,preSelId) {

    $('#function_title_id').empty();

    if( typeof functionTitles[typeid] != 'undefined' ) {

        $( '#function_title_id' ).prop( "disabled",false );

        functionTitles[typeid].forEach(function(funcTitle) { 
            $('#function_title_id').append('<option value="' + funcTitle.id + '"' + (funcTitle.id == preSelId ? ' selected' : '') + '>' + localejs._d('function_titles',funcTitle.name ) + '</option>');
        });
    }

    // disable function titles dropdown if we don't have any
    else {
        $( '#function_title_id' ).prop( "disabled",true );
    }

    // force refresh of bootstrap-select!
    if($('#function_title_id').selectpicker) {
        $('#function_title_id').selectpicker('refresh');
    }
}

还有我的 HTML :

<select name="function_title_id" 
id="function_title_id"  
title="Please select..."                        
class="form-control selectpicker" 
data-live-search="true"
disabled>
</select>

我不明白我做错了什么。我已经看到提到需要在刷新之前重新添加“selectpicker”类,以及我读过的许多其他内容,但对我来说没有任何效果

任何帮助都会很棒!太感谢了!! 拍

更新:我已经添加一个小提琴,其中包含我目前拥有的工作副本。更改单选选项会刷新列表,但不会预选我想要的值...

https://jsfiddle.net/hd41mojx/

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)