我在表单字段中使用Typeahead Bootstrap(使用WP框架)。
我的根目录中存储了一个.json文件,我可以使用prefetch抓取它:
prefetch: {
url: '
../json/test.json',
ttl: 1
}
菜单工作正常。现在,让我们说我不想使用预取,但是在本地json数组中加载数据。
我有相同的json文件:
[{"title":"Title 1","content":"Loopty loos"},{"title":"Title 2","content":"Diddly Bones"}]
如果我将它直接加载到新的Bloodhound类中:
local: [{"title":"Title 1","content":"Loopty loos"},{"title":"Title 2","content":"Diddly Bones"}]
再一次,就像一个魅力。但是,如果我尝试将相同的数据作为变量加载,而不是明确写入:
jsonObject = [{" title":" Title 1"," content":" Loopty loos"},{&#34标题":"标题2","内容":" Diddly Bones"}]
var content = new Bloodhound({
datumTokenizer: function (d) {
return Bloodhound.tokenizers.whitespace(d.content);
},
local: jsonObject
...
它不起作用。这似乎很简单,而我完全错过了它。
完全澄清,我正在查询wp数据库,并使用该结果集创建json文件并将其写入测试目录,然后使用wp_localize_script将其传递给.js文件。
答案 0 :(得分:2)
声明Bloodhound对象后,尝试初始化对象。
GL_LINES
content.initialize();