如何使jQuery插件自动完成像谷歌替换结果
How to make the jQuery plugin Autocomplete like Google replace results?
我像谷歌一样使用jQuery插件Autocomplete来处理两个表单字段——foo
和bar
(这取决于foo
):
$(function() {
$("#foo").autocomplete({
minLength: 3,
limit: 5,
source : [{
url:"/my/ajax/controller/foo?data[foo_number]=%QUERY%",
type:'remote'
}],
});
});
$(function() {
$("#bar").autocomplete({
minLength: 3,
limit: 5,
source : [
function(query, add) {
fooNumber = $('#foo-number').val();
$.getJSON("/my/ajax/controller/bar?data[number]=" + query + "&data[foo_name]=" + fooNumber, function(response) {
add(response);
})
}],
});
});
它基本上可以工作,但字段bar
存在问题。自动完成AJAX请求的每一个进一步结果都被添加到最后一个结果中,而不是替换。这导致了1。重复窦和2。过时的条目,例如当前AJAX请求没有得到任何新结果,并且显示为上一个请求检索到的列表。
我的代码出了什么问题如何每次只获取jsut检索到的结果
我需要的选项调用appendMethod
:
$(function() {
$("#bar").autocomplete({
minLength: 3,
limit: 5,
appendMethod:'replace',
source : [
function(query, add) {
fooNumber = $('#foo-number').val();
$.getJSON("/my/ajax/controller/bar?data[number]=" + query + "&data[foo_name]=" + fooNumber, function(response) {
add(response);
})
}],
});
});
相关文章:
- 像谷歌一样更改滚动网站
- 外部解析RSS提要,不需要像谷歌和服务器端那样的任何库
- 像谷歌收件箱一样将java翻译成javascript
- 如何使jQuery插件自动完成像谷歌替换结果
- 如何使用动态请求参数实现像谷歌一样的自动完成
- 是否可能/如何像谷歌插件一样为jQuery自动完成设置延迟
- 就像谷歌地图 - 只是本地的
- 像谷歌新闻一样的缩放事件
- 像谷歌分析一样加载js脚本,然后运行一个函数
- 如何使上传的图片在画布上拖动像谷歌地图功能
- 跟踪器用户会话与Cookie,而不是像谷歌JS
- 像谷歌(ASP)一样在文本框下方的下拉列表中搜索结果
- 创建一个图像地图并点击像谷歌地图一样的标记
- 下拉选择'它实际上是一个文本输入框,就像谷歌日历一样
- 如何在一些常见的浏览器上禁用热键,如IE、FF、Chrome,就像谷歌文档一样
- 登录页面像谷歌工作后退按钮
- 如何创建JavaScript异步渲染html像谷歌AdSense
- 像谷歌使用的滚动条
- 图像悬停缩放延迟像谷歌图像
- 图像悬停缩放像谷歌图像