在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;
        }
    }
});

09-11 18:26