select2 - 如何允许空值

时间:2017-07-03 16:18:50

标签: javascript html select null jquery-select2

在表单中有多个select2元素。 在特定的select2元素中,我使用非空字符串设置了一些选项' text'和null'值'。 提交表单似乎表现如下:

  • 如果'价值'不为空 - > '值'是提交的项目是'提交'动作
  • 如果'价值'为null - > '文本'是提交的项目是'提交'动作

这不是我正在寻找的行为。 我如何提交'价值'当'价值'一片空白?我只想提交null!我在select2文档中找不到类似的东西。

3 个答案:

答案 0 :(得分:1)

要指定空值,请将Select2值设置为null,并显示占位符。

$('select').select2({
    placeholder: 'Your NULL value caption',
    allowClear: true   // Shows an X to allow the user to clear the value.
});

有一些方法(通过自定义数据适配器或以前的版本)来创建用户可以选择的空值条目。我知道,因为这是我之前所做的,但现在已经改变了。

Select2 4.0.3:请参阅:https://select2.org/selections

====================

重要编辑:从版本4.0.4(昨天)开始,有一个修复程序允许选择带有空白或0选项值的选项。 请参阅:https://github.com/select2/select2/releases/tag/4.0.4

要启用此功能,您需要添加NULL值并删除"占位符"和#34; allowClear"选项。

如果你不删除"占位符"选项它会隐藏你的" NULL"条目。

如果你离开" allowClear"然后点击" X"会导致错误。

答案 1 :(得分:0)

可以通过HTML元素属性(对于select2)完成

<select ... data-allow-clear=true >

答案 2 :(得分:0)

我也遇到了同样的问题,我使用的是静态文件,但使用CDN解决了该问题

js cdn:

<script src%3D"https//cdnjs.cloudflare.com/ajax/libs/select2/4.1.0-beta.1/js/select2.min.js"></script>

css cdn

<link href%3D"https//cdnjs.cloudflare.com/ajax/libs/select2/4.1.0-beta.1/css/select2.min.css" rel="stylesheet" />

请在您的CSS和js中包含这些链接,并使用

<script>
$(".your_class").select2({
placeholder: 'Your caption',
allowClear: true
})</script>

这会很好