我有来自源的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
的任何调用。
答案 0 :(得分:2)
.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
部分。