typeahead.js - 不向 'remote' 位置发送查询
typeahead.js - Not sending query to 'remote' location
我有 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
的调用。
.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
部分。
我有 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
的调用。
.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
部分。