将数组传递给typeahead Bootstrap

时间:2012-09-26 14:05:01

标签: jquery arrays json twitter-bootstrap

我正在尝试通过json将一组值传递给Bootstrap的Typeahead插件的source:选项。

以下是我的简单代码: JsFiddle

我有一个 JSON 对象,我只想将值id传递给source: array

我做错了什么......我做了很多事。

2 个答案:

答案 0 :(得分:4)

Twitter的typeahead期待一个Javascript数组类型。因此,您需要使用JSON.parse(myJSONObject)将JSON对象转换为合法数组。但是,typeahead也期望一个字符串数组,而不是数组数组......所以,问题是 - 你试图在typeahead中显示这些数组的哪个参数?

{
    "id":"2",
    "pid":"0",
    "type":"Group",
    "code":"g",
    "status":"1"
}

您的vals函数似乎正在隔离id参数。如果这是您要输入要显示的参数,只需将source指向x即可。结帐这个修改过的jsFiddle:

答案 1 :(得分:1)

此处还有本地属性。

您可以使用typeahead中的本地属性来提供数组,而无需按摩数据。

e.g。

var data = ["john", "terry", "phil","stuart","louis","marie","bob"];

$("#user-search").typeahead({
   name: "user-search",
   local: data,
   limit: 10
});