我收到了以下代码
$("#UserSearch").autocomplete({
source: "search.php",
minLength: 2
});
这里用户输入一封电子邮件,我通过数据库查找,但我需要找到自动完成停止获取结果的时刻。例如,我有user@example.com和user2@example.com。如果当前用户寻找" user3"并且页面不再返回结果如何捕捉到这一刻,以便我可以在页面上显示另一个元素。
答案 0 :(得分:4)
您可以考虑检查open
事件中显示的元素数量,如果len
为0,则可以相应地显示另一个元素。
其他解决方案是使用自定义_renderItem
函数或自定义扩展窗口小部件,但在这种情况下,这可能是一个更简单的解决方案。
代码:
$("#project").autocomplete({
minLength: 0,
source: projects,
open: function (event, ui) {
var len = $('.ui-autocomplete > li').length;
$('#count').html('Founded ' + len + ' results');
}
});
演示:http://jsfiddle.net/IrvinDominin/DZ9zU/
更好地使用response
事件:
搜索完成后,在显示菜单之前触发。有用 用于本地操作建议数据,其中包含自定义源 选项回调不是必需的。当a时总是触发此事件 搜索完成,即使菜单不会显示,因为有 没有结果或禁用自动填充功能。
代码:
$("#project").autocomplete({
minLength: 0,
source: projects,
response: function (event, ui) {
var len = ui.content.length;
$('#count').html('Founded ' + len + ' results');
}
});