正如问题中提到的,我们在项目中使用JQuery Tagit。我们正在使用ajax搜索来填充关键字。我们面临的问题是,当用鼠标单击搜索结果时,它的工作原理与上述描述完全相同,但是,如果我们使用键盘导航来选择结果,则下次不会针对该搜索结果进行ajax搜索第一次按下关键字(仅在第二次按下关键字后才起作用)要添加,如果我们使用鼠标执行相同的操作,则整个过程将非常有效。我希望我清楚。请在下面找到代码:
$('#tags_3').tagit({
allowSpaces: false,
placeholderText: 'Search Clients',
autocomplete: ({
source: function(request, response) {
// alert(request.term);
$.ajax({
url: '/searchClients',
data: {
format: "json",
keywords: request.term
},
dataType: 'json',
type: 'GET',
success: function(data) {
response($.map(data, function(item) {
return {
label: item.name,
value: item.name
}
}));
},
error: function(request, status, error) {
alert(error);
},
complete: function(request, status, error) {}
})
},
})
});
编辑1:问题也在文档页面上找到
我们只是发现文档page中也存在此问题。在第一个示例中,如果您按下“ a”然后通过键盘选择值,那么您将无法再次按下“ a”,直到再次按下其他键。希望对此有解决方案。
任何帮助将非常感激。
最佳答案
好吧,这是一个已知的错误,我想已经在其错误页面here上进行了报告。但是,tag-it很受欢迎,并且在类似的生产线上有许多解决方案可用。您可以研究的其他解决方案很少:
http://webspirited.com/tagit/
https://github.com/Nikku/jquery-tagit
可能您可以研究其中一种,直到错误没有解决。