试图让jQueryUIAutoComplete使用标签插件

试图让jQueryUIAutoComplete使用标签插件,jquery,jquery-ui,jquery-plugins,Jquery,Jquery Ui,Jquery Plugins,我已经安装了一个jQuery标签插件,我想将它与jqueryui的autocomplete结合起来 这两个插件都可以独立工作,但我很难让它们一起工作。我随信附上了一个样品 如果滚动到底部,您可以注释掉这两个插件中的任何一个,而另一个插件可以正常工作。但是,如果启用了标记插件,则自动完成功能将不起作用 我希望有人能告诉我哪里出了错。标签插件将用id标签替换文本输入,并使用id标签的输入控件 $('#tags').tagsInput(); $("#tags_tag").autocomplete(

我已经安装了一个jQuery标签插件,我想将它与jqueryui的autocomplete结合起来

这两个插件都可以独立工作,但我很难让它们一起工作。我随信附上了一个样品

如果滚动到底部,您可以注释掉这两个插件中的任何一个,而另一个插件可以正常工作。但是,如果启用了标记插件,则自动完成功能将不起作用


我希望有人能告诉我哪里出了错。

标签插件将用id标签替换文本输入,并使用id标签的输入控件

$('#tags').tagsInput();

$("#tags_tag").autocomplete({
    source: availableTags,
    minLength: 2,
    select: function(event, ui) {
        // something will happen eventually ...
    }
});
因此,在您将标记插件绑定到输入控件之后,您必须将自动完成插件绑定到标记\u tag

$('#tags').tagsInput();

$("#tags_tag").autocomplete({
    source: availableTags,
    minLength: 2,
    select: function(event, ui) {
        // something will happen eventually ...
    }
});
更新
问题是,如果输入失去焦点(模糊事件),标记插件将添加标记。此事件在自动完成插件设置输入值之前触发。因此,插件采用当前输入的值(例如Pyt)并将其添加为标记,而不是选择的值(例如Python)。我已经删除了模糊事件,并触发和按键(模拟“回车”)使其工作,但这完全是一个黑客:)

也许您想更深入地研究标记插件。我看到它有一个自动完成的设置

var settings = jQuery.extend({
    ...
    autocomplete: {
        selectFirst: false
    },
    ...
}, options);

见:(更新)

Hrnm。这确实有点作用,但它只是附加了一个新标签,而不是当前的标签。对不起,我不能完全确定你的意思。请您详细解释一下好吗?如果您开始键入,然后从下拉列表中选择一个选项,您会得到您开始键入的文本作为标记,然后是您选择作为另一个标记的文本-而不仅仅是您选择作为标记的文本。先生,为您更新了答案。对不起,我想我应该说得更清楚一点,我使用Javascript的经验非常差。谢谢你为我澄清。非常感谢您提供的详细信息。