我正在使用bootstrap-typeahead以允许多项选择。 这是demo。
原始代码已由@Sherbrow Twitter bootstrap typeahead multiple values
更新我的问题与以下用例有关:
在插入Alaska
值后,我想更新不再显示Alaska
值的来源
任何提示?
答案 0 :(得分:24)
我遇到了同样的问题,这个会为你节省很多时间。我已使用我的代码示例更新了您的旧版jsFiddle。基本的是你需要做
var autocomplete = $('input').typeahead();
autocomplete.data('typeahead').source = newSource;
其中newSource
是新数组。现在你只需要一个添加或删除元素的函数,或者你需要做的任何事情。
答案 1 :(得分:6)
没有一个给定的答案对我有用,我不得不销毁原始的typeahead实例并重新初始化它。
$('input').typeahead('destroy').typeahead(options);
答案 2 :(得分:2)
基于typeahead的默认updater
方法:
updater: function (item) {
var pos = this.source.indexOf(item);
if(pos != -1) {
var newSource =
this.source.slice(0,pos)
.concat(this.source.slice(pos+1));
this.source = newSource;
}
return item
}
Demo with multiple values (jsfiddle)
请注意,考虑到typeahead已初始化,您可以使用$('sel').data('typeahead').source
从任何地方访问此来源