我的页面上有一个tagit元素:
$("#myTags").tagit({
fieldName: "tags",
availableTags: availableTags,
showAutocompleteOnFocus: true,
allowSpaces: true
});
使用此代码添加标签时:
$("#myTags").tagit("createTag", tag);
当我点击输入然后点击外面时,弹出自动完成框并隐藏!
我试图通过代码模拟这个,但没有任何反应:
$(".ui-widget-content.ui-autocomplete-input").focus().blur();
答案 0 :(得分: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);
}
});
这是有效的,因为如果将showAutocompleteOnFocus选项设置为true,则将tagit代码设置为在添加标记后自动显示自动完成。因此,我们暂时将其设置为假,然后在5毫秒后,我们将其重新打开。