twitter typeahead.js + bootstrap tagsinput =对象[object Object]没有方法'setQuery'

时间:2013-12-30 16:45:05

标签: javascript jquery twitter-bootstrap typeahead.js

我正在使用Twitter typeahead和Bootstrap Tags Input。代码如下所示:

$(selector).tagsinput('input').typeahead({
    name:'tags',
    remote: "/admin/tags/search/%QUERY?format=json"
}).bind('typeahead:selected', function (object, datum) {
    $(selector).tagsinput('add', datum);
    $(selector).tagsinput('input').typeahead('setQuery', 'test');
});

这几乎是从这里的示例中复制而来的:http://timschlechter.github.io/bootstrap-tagsinput/examples/bootstrap3/ (要查看原始示例,您需要在Typeahead部分中单击“显示代码”。

它与行$(selector).tagsinput('input').typeahead('setQuery', '');分开,它给了我这个错误:

Uncaught TypeError: Object [object Object] has no method 'setQuery' 

在将建议添加到标记列表后,该行应该重置已输入到预先控制的文本。如果我在偶数回调之外添加相同的行,如下所示:

$(selector).tagsinput('input').typeahead('setQuery', 'test');

有效。

我唯一注意到购买调试的是$(selector).tagsinput('input').typeahead指向事件处理函数外部和内部的不同函数。

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

我写这个

$("#TagsInput").tagsinput("input").typeahead("val", "");

答案 1 :(得分:-1)

我有同样的问题。 There您可以看到正确的用途。

您必须在第二行设置typeahead:

$(selector).tagsinput();
$(selector).tagsinput('input').typeahead('setQuery', '');