8

複数選択できるようにするために、bootstrap-typeaheadを使用しています。これがデモです。

元のコードは@Sherbrowによって更新されましたTwitterブートストラップtypeahead複数の値

私の質問は、次のユースケースに関連しています。値
を挿入した後Alaska、値が再び表示されないようにソースを更新したいと思いAlaskaます。
ヒントはありますか?

4

3 に答える 3

24

私は同じ問題を抱えていました、そしてこれはあなたに多くの時間を節約するでしょう。古いjsFiddleを私のコード例で更新しました。基本的なことはあなたがする必要があるということです

var autocomplete = $('input').typeahead();
autocomplete.data('typeahead').source = newSource;

newSource新しいアレイはどこにありますか。これで、要素を追加または削除する関数、または要素を使用して行う必要のあるものが必要になります。

于 2012-11-22T16:11:53.280 に答える
6

与えられた答えはどれも私にはうまくいきませんでした。元の先行入力インスタンスを破棄して再初期化する必要がありました。

$('input').typeahead('destroy').typeahead(options);

于 2016-05-19T21:34:48.727 に答える
2

updatertypeaheadのデフォルトの方法に基づく:

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
}

複数の値を持つデモ(jsfiddle)

先行入力が初期化されていることを考慮すると、どこからでもこのソースにアクセスできることに注意してください。$('sel').data('typeahead').source

于 2012-11-22T20:42:07.943 に答える