2016-05-24 4 views
0

У меня есть tagit элемент на моей странице:Скрыть автозаполнения окно в Tag-то

$("#myTags").tagit({ 
    fieldName: "tags", 
    availableTags: availableTags, 
    showAutocompleteOnFocus: true, 
    allowSpaces: true 
}); 

Когда я добавляю тег с помощью этого кода:

$("#myTags").tagit("createTag", tag); 

окно автозавершения выскакивает и только шкура когда я нажимаю на вход, а затем нажимаю на него!

Я попытался смоделировать с помощью кода, но ничего не происходит:

$(".ui-widget-content.ui-autocomplete-input").focus().blur(); 

ответ

1

Я тоже был этот вопрос, и, наконец, нашли решение!

var tagElement = $("#myTags").tagit({ 
    fieldName: "tags", 
    availableTags: availableTags, 
    allowSpaces: true, 

    /* you need to set these three options hide autocomplete after setting a tag */ 
    showAutocompleteOnFocus: true, 
    beforeTagAdded: function (event, ui) { 
     // turn autocomplete off 
     tagElement.tagit('option', 'showAutocompleteOnFocus', false); 
    }, 
    afterTagAdded : function(event, ui) { 
     // turn autocomplete back on 
     setTimeout(function() { tagElement.tagit('option', 'showAutocompleteOnFocus', true); }, 5); 
    } 
}); 

Это работает, потому что код tagit настроен автоматически показывать автозаполнения после тега был добавлен, если у вас есть возможность showAutocompleteOnFocus установлена ​​верно. Итак, мы на мгновение установили его в false, а затем через 5 миллисекунд, мы снова включим его.

Смежные вопросы