1

Typeahead.js v.0.11.1 および Bootstrap v3.3.5でBootstrap Tags Input v.0.5.0を使用しようとしています。先行入力ソース配列に存在しないタグを入力できないことを除いて、私にとってはうまくいっています。ソース配列に存在しないアイテムを入力できるようにするには、何を変更する必要がありますか?

これが私のサンプル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()
  }
});
4

1 に答える 1

1

現在のtagsinput ドキュメントは、自由入力は「文字列をタグとして使用する場合にのみ可能」であることを示しています。これは、Typeahead + Bloodhound をソースとして使用すると、freeInputオプションと競合する可能性があると考えさせられます。

Bloodhound を使用する代わりに、先行入力ソースを文字列の配列として追加してみます。

$('#dailyTagsInput').tagsinput({
  ...
  typeaheadjs: {
    name: 'states',
    source: $scope.statesSource
  }
});
于 2015-09-14T14:22:34.510 に答える