Select2:如何允许用户从默认列表中选择但接受新字符串?

Posted

技术标签:

【中文标题】Select2:如何允许用户从默认列表中选择但接受新字符串?【英文标题】:Select2: How to allow user to select from a default list but accept a new string? 【发布时间】:2014-03-30 16:46:59 【问题描述】:

我有这个需求,但我无法使用 Select2 来完成它。

用户必须从列表中选择一个名称。此列表是定义明确的字符串列表。所以我想将此列表作为“数据”传递给 Select2。

如果用户愿意,他可以选择一个新的名字,并且必须毫无问题地接受它,不要对用户说什么也不问什么。

所以我尝试使用 INPUT 作为元素,使用 data: 来提供默认列表,并让用户 createSearchChoice 返回一个新对象,其 id: term, text: term

但我得到了

未为 Select2 OrdiniCaricati_Nome_Cliente 定义查询函数

要使用的属性/元素/函数的正确组合是什么?

【问题讨论】:

Select2 dropdown but allow new values by user? 的可能重复项 【参考方案1】:

可以在这里找到类似的问题:Select2 dropdown but allow new values bu user?

这是我在答案之间找到的一个有效的 JSFiddle:http://jsfiddle.net/pHSdP/2/

html

<input type='hidden' id='tags' style='width:300px'/>

jQuery

$("#tags").select2(
createSearchChoice:function(term, data)  if ($(data).filter(function()  return this.text.localeCompare(term)===0; ).length===0) return id:term, text:term; ,
multiple: false,
data: [id: 0, text: 'story',id: 1, text: 'bug',id: 2, text: 'task']
);

【讨论】:

以上是关于Select2:如何允许用户从默认列表中选择但接受新字符串?的主要内容,如果未能解决你的问题,请参考以下文章

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

如何默认选择 select2.js 的下拉值

select2标签不适用于json url单选

Select2 多个 - 如何设置空白默认值

Select2:设置下拉列表的默认值,从 C# 模型中获取的数据以剃刀语法

如何从外部列表框中控制 select2 选择框?