2014-09-06 45 views
4

在我的项目中实施了Select2。使用插件中提供的标签功能。该功能按照文档中的建议工作,但是我被卡住了一点。如何防止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, 
}); 

lanugagenames数据:

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

在输入框中输入字符

如下我已经初始化标签,我t建议,但是我也得到输入的字符作为建议(屏幕附加)之一。例如,在尝试输入英文的同时,输入“En”并将其作为其中一个建议。我检查了数据集,没有输入“En”。我无法找到任何特定的配置来停止此额外条目。有关如何防止出现此额外条目的任何建议?

enter image description here

+0

''? – 2014-09-06 11:36:29

回答

4

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

尝试这样:

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

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

通过遵循文档,您可以使用标签模式tags: true选项 因此将其设置为false。 see this

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