bootstrap typeahead - 改变来源

Tzu*_*hay 14 jquery twitter-bootstrap bootstrap-typeahead

我正在寻找一种改变source输入的方法.

例如,假设我有以下2个列表,并且取决于具体情况,我想让typeahead使用不同的源.

var list1 = ["this", "is", "first", "list"],
    list2 = ["second", "list", "comes", "here"];

$("selector").typeahead({source: list1})
Run Code Online (Sandbox Code Playgroud)

然后,当我这样做

$("selector").typeahead({source: list2})
Run Code Online (Sandbox Code Playgroud)

并开始在输入框中输入,第一个列表出现在新的列表下方.

我试过了

$("selector")
    .removeData()
    .typeahead({source: list2})
Run Code Online (Sandbox Code Playgroud)

然而,它没有任何效果.

Sam*_*rie 24

你必须更新指示相关联的数据字段在这里:

$("selector").data('typeahead').source = list2;
Run Code Online (Sandbox Code Playgroud)

  • 我收到了无法设置未定义的属性'source' (11认同)

Nei*_*len 5

使用Bootstrap-3-Typeahead库时,这些答案都不适用于我.我能够通过销毁已初始化的typeahead来更新源,并使用新的源重新初始化它:

    $(".typeahead").typeahead("destroy");
    $(".typeahead").typeahead({ source: result });
Run Code Online (Sandbox Code Playgroud)