我希望jquery自动完成选择列表中的第一项,然后在空格中选择该项而不是输入或单击。我应该将代码附加到jquery ui java脚本文件,还是有办法为空间添加另一个事件。
先谢谢你 马修
答案 0 :(得分:0)
你必须更改组件的代码ui.autocomplete(不推荐,你创建一个新的更好),你必须改变" keyCode.ENTER" to" keyCode.SPACE"在以下行中:
case keyCode.ENTER:
// when menu is open and has focus
if ( this.menu.active ) {
// #6055 - Opera still allows the keypress to occur
// which causes forms to submit
suppressKeyPress = true;
event.preventDefault();
this.menu.select( event );
}
break;
如果你想要两个键(输入和空格)都有效,你只需要写:
case keyCode.SPACE:
case keyCode.ENTER:
要选择第一个元素,您只需添加"自动对焦:true":
$( "#autocomplete" ).autocomplete({autoFocus: true,
source: whatever
});
在这里你可以看到它正在运行:
这里有一个我创建一个名为" ui.autocompletespace"的新组件的版本,它依赖于jqueryui:
有关此组件的更多信息: