【问题标题】:typeahead.js - Not sending query to 'remote' locationtypeahead.js - 不向“远程”位置发送查询
【发布时间】:2016-09-09 09:36:44
【问题描述】:

我有 typeahead.js 的来源:

https://github.com/twitter/typeahead.js

以下示例不会向服务器端脚本发出请求以查询数据库:

HTML:

<input id="doc" class="typeahead" type="text" placeholder="search here">

JS

$('#doc').typeahead({
  name: 'doc-search',
  minLength: 3,
  limit: 10,
  remote: '/Search&doc_no=%QUERY'
});

我在开发者控制台中没有看到对 /Search 的任何调用。

【问题讨论】:

标签: javascript twitter-bootstrap-3 typeahead.js


【解决方案1】:

.typeahead 不包含remote 的定义,您需要使用Bloodhound 远程获取数据。

这是一个远程获取数据的示例。

var docs = new Bloodhound({
  datumTokenizer: Bloodhound.tokenizers.obj.whitespace('YourColumnName'),
  queryTokenizer: Bloodhound.tokenizers.whitespace,
  remote: {
    remote: '/Search&doc_no=%QUERY',
    wildcard: '%QUERY'
  }
});

$('#doc').typeahead(null, {
  name: 'documents',
  display: 'value',
  source: docs
});

你可以看到examples页面的Remote部分。

【讨论】:

  • 谢谢,我在上面进行了更改,但开发人员工具或服务器日志中仍然没有显示对/Search的请求
  • @Dr.Avalanche 请查看更新。您需要使用Bolodhound 来获取远程数据。
  • 谢谢,remote: '/Search&amp;doc_no=%QUERY' 末尾缺少逗号,但它可以工作。
  • 还有一点display@ value'`应该匹配YourColumnName中的值
猜你喜欢
  • 2013-09-23
  • 1970-01-01
  • 1970-01-01
  • 2017-07-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-19
相关资源
最近更新 更多