首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何彻底清理select2控件?

如何彻底清理select2控件?
EN

Stack Overflow用户
提问于 2013-05-01 07:31:17
回答 6查看 83.5K关注 0票数 48

我正在和一个很棒的select2 control合作。

我也在尝试清理和禁用包含内容的select2,所以我这样做:

代码语言:javascript
复制
$("#select2id").empty();
$("#select2id").select2("disable");

好的,它可以工作,但如果我选择了一个值,所有的项都会被移除,控件被禁用,但选定的值仍然会显示。我想要清除所有内容,以便占位符将被显示。这是我做的一个例子,你可以看到这个问题:http://jsfiddle.net/BSEXM/

HTML:

代码语言:javascript
复制
<select id="sel" data-placeholder="This is my placeholder">
    <option></option>
    <option value="a">hello</option>
    <option value="b">all</option>
    <option value="c">stack</option>
    <option value="c">overflow</option>
</select>
<br>
<button id="pres">Disable and clear</button>
<button id="ena">Enable</button>

代码:

代码语言:javascript
复制
$(document).ready(function () {
    $("#sel").select2();

    $("#pres").click(function () {
        $("#sel").empty();
        $("#sel").select2("disable");
    });

    $("#ena").click(function () {
        $("#sel").select2("enable");
    });
});

CSS:

代码语言:javascript
复制
#sel {
    margin: 20px;
}

你对此有什么想法或建议吗?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2013-10-23 23:50:11

为什么会有这么多麻烦?

使用:

代码语言:javascript
复制
 $('#sel').select2('data', null);
票数 30
EN

Stack Overflow用户

发布于 2018-12-12 22:58:16

我使用的是Select2 v4.0 (4.0.6-rc.0)

使用以下命令可清除下拉字段中的所有值:

代码语言:javascript
复制
$('#id_of_select2_select').empty();

这样做会将它们完全删除,并且在页面刷新之前无法重新选择它们。

如果您要做的只是删除选择,请执行以下操作:

代码语言:javascript
复制
$('#id_of_select2_select').val(null).trigger('change');

当前选择的选项被清除,并且用户将能够重新选择他们想要的选项。

票数 9
EN

Stack Overflow用户

发布于 2017-11-29 19:59:50

根据Sarath Kumar的回答:

代码语言:javascript
复制
$('#sel').val(null).trigger('change');

参考官方文档,链接如下:

https://select2.org/programmatic-control/add-select-clear-items#clearing-selections

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16310588

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档