我正在尝试将Bootstrap Tags Input v.0.5.0与typeahead.js v.0.11.1和Bootstrap v3.3.5一起使用。它对我有用,但我无法输入我的先行源数组中不存在的标记。为了允许输入源数组中不存在的项,我需要更改什么?
这是我的示例html:
<input type="text" id="dailyTagsInput" name="dailyTagsInput" class="form-control">
这是我的样本js:
$scope.states = ['Alabama', 'Alaska', 'Arizona'];
$scope.statesSource = new Bloodhound({
datumTokenizer: Bloodhound.tokenizers.whitespace,
queryTokenizer: Bloodhound.tokenizers.whitespace,
local: $scope.states
});
$('#dailyTagsInput').tagsinput({
maxChars: 50,
maxTags: 10,
trimValue: true,
freeInput: true,
typeaheadjs: {
name: 'states',
source: $scope.statesSource.ttAdapter()
}
});
答案 0 :(得分:1)
current tagsinput documentation表示只有在使用字符串作为标记时才可以使用“自由输入”。这让我觉得使用Typeahead + Bloodhound作为源可能会与freeInput
选项冲突。
我会尝试添加一个预先输入源作为字符串数组而不是使用Bloodhound。
$('#dailyTagsInput').tagsinput({
...
typeaheadjs: {
name: 'states',
source: $scope.statesSource
}
});