如何从控制器选择插件中选择多个值

时间:2018-05-22 16:54:57

标签: javascript arrays angularjs object selectize.js

如何添加几个选项 我正在使用这个插件:https://github.com/selectize/selectize.js/blob/master/docs/usage.md

我有一个如下图所示的对象: enter image description here

这是我的CLient脚本

//skills
$scope.$selectSkill = $('#selectSkill').selectize({
    valueField: 'id',
    labelField: 'name',
    searchField: 'name',
    placeholder: "Select Skills",
    options: $scope.data.skills,
    create: false,
    sortField: {
        field: 'name',
        direction: 'asc'
    }
});

这是我的HTML

<select id="selectSkill" 
name="selectSkill" 
ng-model="selectSkill" 
multiple required> </select>

这就是它到目前为止加载的一切都很好, enter image description here

现在当我触发一个方法时,我会得到一些(两个)这样的值作为回应:

48c9eda9c0a8018b4b6aca082d5d1e41  ,  48c9fe9ac0a8018b6a37e4db0d07df09

我想要选择这两个,如下图所示 enter image description here

我该怎么做..?

我尝试过这样的事情:

var $select = $("#selectSkill").selectize();
                var yourDefaultIds = [slectedSkills.skills];  //(those 2 vlaues)
                selectize.setValue(yourDefaultIds);;

1 个答案:

答案 0 :(得分:1)

//populate skills starts here
var templateSkills = finTempObj.skills;
var str_array_skills = templateSkills.split(',');
var $select =   $("#selectSkill").selectize();
var selectize = $select[0].selectize;
selectize.setValue(str_array_skills);
selectize.refreshOptions();
//populate skills ends here

这应该可行我已经测试过了。 而不是设置为字符串将这两个值转换为数组然后设置。