【问题标题】:How to prevent select2 from taking user input as one of the tag suggestions如何防止 select2 将用户输入作为标签建议之一
【发布时间】:2014-09-06 11:26:39
【问题描述】:

在我的项目中实现了 Select2。使用插件中提供的标签功能。该功能按照文档中的建议工作,但是我被困在某一点上。

我已经将标签初始化如下:

HTML

<div class="form-group">
       <label for="languages">Languages <span class="mandatory">*</span> :</label>
       <input type="text" required="" placeholder="Languages" name="languages" id="languages" class="form-control">
</div>

JS:

$('#languages').select2({
     tags: languagenames,
});

语言名称数据:

[{"id":"1","text":"Afrikaans"},{"id":"2","text":"Albanian"},{"id":"3","text":"Arabic",....}]

在输入框中输入字符时,我会在下拉菜单中获得建议,但我也会获得输入的字符作为建议之一(附屏幕)。例如,在尝试输入英语时,我输入“En”,它作为建议之一出现。我检查了数据集,没有“En”条目。我找不到任何特定的配置来阻止这个额外的条目。关于如何防止出现此额外条目的任何建议?

【问题讨论】:

  • &lt;input autocomplete="off" /&gt; ?

标签: jquery jquery-select2


【解决方案1】:

我以前不知道这个插件,但它看起来很棒。

试试这样的:

$('#languages').select2({
     tags: languagenames,
     createSearchChoice : function(term){
        return false;
    }
});

【讨论】:

    【解决方案2】:

    我知道这是一个迟到的答案。

    按照文档,您可以使用tags: true 选项进行标记模式 所以设置为假。 see this

    $(".js-example-tokenizer").select2({
      tags: true,
      tokenSeparators: [',', ' ']
    })
    

    【讨论】:

    • 我仍然可以在多选选择框上输入文本......有没有办法完全禁用文本输入?
    猜你喜欢
    • 2015-10-04
    • 2013-12-13
    • 2023-03-31
    • 2020-04-19
    • 1970-01-01
    • 2015-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多