fuxp

 

$(\'body\').on(\'click\', \'.btnedit\', function() {  //点击按钮事件
$(\'input[name=name]\').val($(this).attr(\'data-name\')); //name赋值
$(\'input[name=nickname]\').val($(this).attr(\'data-nickname\')); //nickname赋值

var tag=$(this).attr(\'data-tagid_list\');
var ddd = [];
var data =<?php echo json_encode($groups);?>;
var aarr=eval(data);
for(i=0;i<aarr.length;i++){
ddd.push(aarr[i][\'name\']);
}
$("#tags").select2({
data: ddd,
placeholder: "请选择啊"

});
$("#tags").val(tag.split(",")).trigger(\'change\');
});

 

 

 

 

 

 

之前用select2初始化默认值使用了select2(\'val\',\'1\'),这样做没问题,但只能用在单选上,多选的话,即使将val后面的值改成数组[\'0\', \'2\']这种形式也没用。

<script type="text/javascript">
    $(document).ready(function() {
      var data = [{ id: 0, text: \'aaa\' }, { id: 1, text: \'bbb\' }, { id: 2, text: \'ccc\' }];
      $(".js-example").select2({
        data: data,
        placeholder: "请选择啊"
        
      });
      $(".js-example").select2(\'val\',\'1\')
    });
</script>

<select class="js-example new-select" multiple="multiple">
</select>

如何初始化出多选呢,在stackoverflow找到了答案,那就是用$(".js-example").val([\'0\',\'2\']).trigger(\'change\')这种方法。

把上面代码中的$(".js-example").select2(\'val\',\'1\')换成$(".js-example").val([\'0\',\'2\']).trigger(\'change\')就OK了。

分类:

技术点:

相关文章: