jQuery Autocomplete在鼠标输出时失去了选择权

时间:2012-07-20 20:17:33

标签: jquery jquery-ui autocomplete jquery-autocomplete

当我通过键盘箭头选择项目时,输入字段中的选择会按预期更改。但是,如果我将鼠标移出项目,则输入字段将恢复为用户键入的内容,从而丢失以前通过键盘进行的选择。

jsfiddle example

documentation声称我正在尝试完成的事实上是默认行为,但它似乎无法正常工作。

另一个提及行为似乎已经改变的参考:http://forum.jquery.com/topic/autocomplete-s-menu-items-mouseover-behavior#14737000002991273

我目前正在使用jquery-rails 2.0.2,它引入了jQuery-1.7.2。

2 个答案:

答案 0 :(得分:0)

当我在你的小提琴中注释掉Javascript的最后一行时,预期的行为会再次开始工作。

我不完全确定原因,但看起来你要两次调用自动完成脚本,也许它们会以某种方式干扰彼此。

答案 1 :(得分:0)

“在将焦点移动到某个项目(未选择)之前,ui.item指的是焦点项目。焦点的默认操作是将文本字段的值替换为焦点项目的值,但仅限于焦点事件由键盘交互触发。取消此事件可防止更新值,但不会阻止菜单项被聚焦。“

文本居所是描述焦点事件的内容 如果你看一下它就说The default action of focus is to replace the text field's value with the value of the focused item, though only if the focus event was triggered by a keyboard interaction.

因此,您可以看到此demo显示该选项获得焦点但值不会改变。

reference