在Rails 4.0中,我尝试使用jquery tagit()插件实现标签输入字段。
在此插件中,用户应从自动完成列表中选择输入标签,而不是通过自定义条目进行选择。在这里如何避免自定义项?同样在这里,我提到minLength为2,但是当我键入第一个字母本身时会显示自动完成列表。
对于代码参考,我使用了https://github.com/aehlke/tag-it
代码是
jQuery(document).ready(function() {
jQuery("#DIV_USERNAME").tagit({
minLength: 2,
tagLimit: 3,
allowNewTags: false,
placeholderText: "You can enter only 3 tags",
tagSource: function( request, response ) {
$.ajax({
url: "autocomplete/names",
data: { term:request.term },
dataType: "json",
success: function( data ) {
response( $.map( data, function( item ) {
return {
label: item.value
}
}));
}
});
}
});
});
如果我提到allowNewTags:false也不起作用。
最佳答案
通过检查tagit
源代码,看起来该选项不可用。
我会按照他们在这里说的去做:https://stackoverflow.com/a/30495652。
var tags_list = ['tag1', 'tag2', 'tag3'];
$("input[name='subject-tags']").tagit({
availableTags : tags_list,
beforeTagAdded : function(event, ui) {
if(tags_list.indexOf(ui.tagLabel) == -1){
return false;
}
}
});