typeahead.js prefetch不起作用

我无法在typeahead.js中获取prefetch函数,但它可以很好地处理本地数据。 我首先尝试链接到返回json对象或列表的servlet,但过了一段时间我放弃了它并开始检查提供的示例。 因此,他们的示例链接到如下所示的页面: http : //twitter.github.io/typeahead.js/data/countries.json但是,即使我将脚本链接到该页面,我的脚本也无法正常工作与他们完全一样的事情。 我尝试将该文件复制到我的本地工作区并链接到那里无济于事。 为了检查它是否正在进行任何调用我每次收到get请求时都会使servlet崩溃,当我运行自动完成示例页面时它确实崩溃了,因此它不是缓存问题。 我尝试将jquery降级到1.9.1,但这也不起作用(目前使用1.10)。 我尝试使用不同版本的typeahead.js。 我尝试使用Internet Explorer和谷歌浏览器来查看错误是否存在。

必须有一些我缺少的重要内容,因为我已经用尽了我能想到的每一个错误来源。 其他人似乎没有任何问题让这个工作。

这是我使用的代码:

    Demo        $(document).ready(function() {$('.typeahead').typeahead({ name: "Auto" , ttl_ms: 10000, prefetch: 'http://twitter.github.io/typeahead.js/data/countries.json', //local: ['abc', 'acd', 'ade', 'bcd] });});    

似乎问题与浏览器存储中的数据缓存有关。

  1. 您可以清理浏览器存储(而不是浏览器缓存)。
  2. 您可以将typeahead配置中的数据集name更改为另一个。
  3. 您可以降低prefetchttl 。 当然,你可以稍后增加ttl 。 见下文:

     prefetch: { url: 'http://twitter.github.io/typeahead.js/data/countries.json', ttl: 1 // in milliseconds }, 

如果您在此处浏览代码将更加清晰: http : //goo.gl/TN3Gv