gpt4 book ai didi

jquery - Typeahead 和 Bloodhound - 如何获取 JSON 结果

转载 作者:行者123 更新时间:2023-12-03 21:58:29 24 4
gpt4 key购买 nike

我有国家/地区的 json 列表:http://vocab.nic.in/rest.php/country/json

我正在尝试使用 Bloodhound 建议引擎获取country_id 和国家/地区名称。 O尝试了以下代码:

var countries = new Bloodhound({
datumTokenizer: Bloodhound.tokenizers.obj.whitespace('country_name'),
queryTokenizer: Bloodhound.tokenizers.whitespace,
limit: 10,
prefetch: {
url: 'http://vocab.nic.in/rest.php/country/json',
filter: function(response) {
return response.countries;
}
}
});

$('#my-input').typeahead({
hint: true,
highlight: true,
minLength: 1
},
{
name: 'states',
displayKey: 'value',
source: countries.ttAdapter()
});

这不起作用。我应该如何更改代码才能使其正常工作?

最佳答案

// instantiate the bloodhound suggestion engine
var countries = new Bloodhound({
datumTokenizer: function(countries) {
return Bloodhound.tokenizers.whitespace(countries.value);
},
queryTokenizer: Bloodhound.tokenizers.whitespace,
remote: {
url: "http://vocab.nic.in/rest.php/country/json",
filter: function(response) {
return response.countries;
}
}
});

// initialize the bloodhound suggestion engine
countries.initialize();

// instantiate the typeahead UI
$('.typeahead').typeahead(
{ hint: true,
highlight: true,
minLength: 1
},
{
name: 'countries',
displayKey: function(countries) {
return countries.country.country_name;
},
source: countries.ttAdapter()
});

<强> Example Codepen

提前输入输出

Output of Typeahead

注释:

  • 您服务器上的数据=“预取”。
  • 来自外部的数据=“远程”

关于jquery - Typeahead 和 Bloodhound - 如何获取 JSON 结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22730407/

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