如果mustMatch被激活,我们发现,当条目最后包含一个空格时,一旦我们从列表中选择值,它将被拒绝。我们已经发现了这个问题,它在搜索事件中:在第184行,您修剪了输入的值:
$.each(trimWords($input.val()), function(i, value) {
request(value, findValueCallback, findValueCallback);
});
但是当你与列表中的值比较(第175行)时,你不会修改列表值:
if( data[i].result.toLowerCase() == q.toLowerCase() ) {
result = data[i]; break;
}
因此,输入字段中的值在列表中找不到,并被拒绝。
我们的解决方案是在比较前修剪列表值:
if( trimWords(data[i].result).toLowerCase() == q.toLowerCase() ) {
result = data[i]; break;
}