select2 设置多个选择值

select2 set multiple selected values

我有以下选择2:

<select id="e1" multiple style="width: 250px;" name="attributes[]">
    <?php if(isset($vars['attributes'])):?>
        <?php foreach($vars['attributes'] as $attribute):?>
            <option value="<?php echo $attribute['id'];?>"><?php echo $attribute['name'];?></option>
        <?php endforeach;?>
    <?php endif;?>
</select>

现在我通过加载一些数据。 Ajax:

其中列出了以下数组:

现在我想将这 3 个作为选定值添加到我的 select2 中。

我该怎么做?

更新

到目前为止,这是我的代码:

    var _lst = document.getElementById('e1');
var optCount = _lst.options.length;
for (var i=0 ; i<data['attributes'].length; i++){
    var opt = new Option(data['attributes'][i]['name'],data['attributes'][i]['id']);
    _lst.options[optCount+i] = opt;
}

一个非常简单的方法:jsFiddle example

我不确定你的 attributes 类型和结构(json?数组?) 您可以根据自己的目的修改代码。