今天遇到一个需求,用select2实现搜索查询且多选;回显值一直回显不了,因为前段技术栈太远古,不能用目前的es6UI组件库的组件。当然遇到问题,比较难搞。
网上千篇一律是如下代码:
$(".select2-search").val(arr).trigger("change");
类似的一些答案,可能对其他人适用,但在我这里不适用,不知道版本还是环境问题,总之很玄学。
后来遇到有同事做过,经过指导,完美解决问题。代码块如下:
//数据格式一定要是id,text这种,否则select2识别不了
var list =[{id:277,text:"业务部"},{id:278,text:"财务部"}];
$('.select2-productName').select2({
multiple: true,
data: list,
width: '100%',
placeholder: '请选择'
})
$('.select2-productName').select2('val', ['227']); //一定是数组形式
埋头苦研(ps:耽误)了一天时间,谨此纪念遇坑事件,望诸君避之!!!