gpt4 book ai didi

jquery - Twitter Typeahead.js Bloodhound 远程返回未定义

转载 作者:行者123 更新时间:2023-12-01 00:10:08 25 4
gpt4 key购买 nike

无法让 Twitter Typeahead.js(远程版本)正常工作。我的建议得到“未定义”。任何帮助将不胜感激。

代码如下:

JS:

var films = new Bloodhound({
datumTokenizer: Bloodhound.tokenizers.obj.whitespace('value'),
queryTokenizer: Bloodhound.tokenizers.whitespace,
remote: '../widgets/films.json'
});

films.initialize();

$('#films .typeahead').typeahead(null, {
name: 'films',
displayKey: 'value',
source: films.ttAdapter()
});

最佳答案

Bloodhound 建议引擎无法在您的 JSON 数组中找到显示键“值”。

您需要将 JSON 数组转换为 JavaScript 对象数组。 JavaScript 对象有一个名为“value”的变量,其值是电影标题;显示键使用的就是这个“值”变量,例如

remote: {
url: '../widgets/films.json',
filter: function (films) {
// $.map converts the JSON array into a JavaScript array
return $.map(films.results, function (film) {
return {
// NB : replace original_title below with your JSON film key
value: film.original_title
};
});
}
}

如果您包含 movie.json 输出的示例,则可以改进上面的示例(因为这样我就可以使用您需要的确切值)。

参见this回答扩展示例和 jsfiddle。

关于jquery - Twitter Typeahead.js Bloodhound 远程返回未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25984508/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com