bootstrap select 学习使用笔记-------选中赋值及change监听丢失

在 bootstrap 和 knockout 共同存在下使用 select 下拉选择插件,发现绑定选项、赋值之后插件不可用了,绑定的监听事件也丢失了。迫不得已在绑定选项值之后再次调用刷新,以及赋值后重新绑定监听。不知哪位大神有更好的方式解决,求留言。。。。。。

  $.post('/cpms/cpms/api/getProjectList', data).done(function(result) {
    if(typeof(result) == "string"){
      result = JSON.parse(result.data);
    }
    if(result.data.rows){
      viewModel._helper.projectCodes(result.data.rows); //绑定下拉选项
      $('.selectpicker').selectpicker('refresh');//刷新插件
    }
    
  }).fail(function (err) {
    return '';
  })

  

//为插件赋选中值
$('#PROJECT_NAME_SELECT').selectpicker('val',taskData.PROJECT_CODE);

// $('#PROJECT_NAME_SELECT').selectpicker('refresh');//重新刷新不好使
// $('#PROJECT_NAME_SELECT').selectpicker('render');//也不好使
//重新绑定监听 
   initChange(taskData.PROJECT_CODE);
……

function initChange(projectCode){
  $('#PROJECT_NAME_SELECT').on('changed.bs.select', function(e) {
      if(e.target.value){
        var project = viewModel._helper.projectCodes().filter(function(item) {
            return item.projectCode === e.target.value;
        });
      }