我无法将bootstrap 3 typeahead与标签输入集成,但将对象作为标签.如果我在输入字段上只使用typeahead,它可以工作,但如果我将它与标签输入集成,那么它不起作用,我甚至没有得到任何真正令人沮丧的错误.这是我的代码:
var places = [{name: "New York"}, {name: "Los Angeles"}];
//this works
$('input').typeahead({
source: places
});
//this doesn't
$('input').tagsinput({
freeInput: false,
confirmKeys: [44],
typeahead: {
source: places
}
});
我做错了什么或这是一个错误?
如果有人有一个这方面的工作示例,我真的很感激一些帮助,它可以是typeahead.js而不是bootstrap 3 typeahead,我试图使用它也可以工作,但后来我有一个问题,如果我选择一个建议来自typeahead click enter的选项提交整个表单,而不是仅仅接受该选项作为标记.
您应该通过typeahead
选项将typeahead附加到tagsinput !这更容易(以及文档建议的内容).然后,如果你map()
places
使用一个字符串数组,它的工作原理:
$('.tagsinput-typeahead').tagsinput({
// other tagsinput options here
typeahead: {
source: places.map(function(item) { return item.name }),
afterSelect: function() {
this.$element[0].value = '';
}
}
})
演示 - > http://jsfiddle.net/gm3a1s9k/1/
注意afterSelect()
,需要清除输入.