我正在使用Jörn Zaefferer 的 jQuery 自动完成插件,它工作得很好,除了一个小错误:如果用户开始输入自动完成附加到的一个字段,但是当建议仍然显示他们点击另一个输入字段时,光标返回到具有自动完成功能的字段。
是否有任何解决方案,或者它几乎是有效的方式?我注意到 jQuery UI 自动完成功能也是如此。
我正在使用Jörn Zaefferer 的 jQuery 自动完成插件,它工作得很好,除了一个小错误:如果用户开始输入自动完成附加到的一个字段,但是当建议仍然显示他们点击另一个输入字段时,光标返回到具有自动完成功能的字段。
是否有任何解决方案,或者它几乎是有效的方式?我注意到 jQuery UI 自动完成功能也是如此。
我很乐意为您查看代码,取消注释此行:
// TODO provide option to avoid setting focus again after selection? useful for cleanup-on-focus
input.focus();
jquery.autocomplete.js
在行583
。_
修复方法是:
注释掉解压版本的第 308-310 行:
//if (wasVisible)
// position cursor at end of input field
//$.Autocompleter.Selection(input, input.value.length, input.value.length);
在 Luca 的帖子中,注释掉第 510 行:
//input.focus();
这两个都需要注释掉以使其正常工作。
如果用户使用 Enter 键或 TAB 键呢?那么如何阻止插件在输入字段中设置焦点?您也可以使用它,还是仅当用户使用鼠标从下拉列表中进行选择时?