select2 插件自定义 tag 选择问题

Posted 雷夫·麦

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了select2 插件自定义 tag 选择问题相关的知识,希望对你有一定的参考价值。

问题描述

select2 设置 tags = true 的时候可以输入并选择自定义的内容。但是最近出现了 <select> 重新插入初始化的时候,选择了自定义 tag 但是界面没有更新的情况。
插件版本: select2 4.0.1

查找

跟着源码跑了几遍才发现 select2 会对选择进行过滤,通过 getHighlightedResults 方法找到 select option:selected 的对应选项,如果当期 tag 是已选中的就直接 self.trigger(‘close‘, {}); 了。但是自定义 tag 是输入查询后才创建、插入 select,怎么会选中呢?想了一下,是 select 会把第一个 option 默认选中的缘故。

解决

select 插入一个空值的 option 就行了
<select name="id"> <option value=""></option> </select>

以上是关于select2 插件自定义 tag 选择问题的主要内容,如果未能解决你的问题,请参考以下文章

在select2 jquery插件的数据部分传递一个数组

Vuejs自定义select2指令

自定义组件选择2

Select2 验证并强制用户选择至少 X 个项目

使用 select2 与 ajax 调用 asp.Net 服务自定义参数

Select2 自定义搜索