我正在关注关于这个主题的 Railscast,虽然自动完成功能有效,但当用户选择一个项目并按 Enter 键时,我无法让它提交表单。我有这个(咖啡脚本)代码,但它似乎不起作用......谁能看到我哪里出错了?
jQuery ->
$('#search_bar').autocomplete(
source: $('#search_bar').data('autocomplete-source')
).keydown (e) ->
$('#search_button').trigger "submit" if e.keyCode is 13
理想情况下,我希望它也可以通过鼠标单击来提交选择项目 - 但不确定这是否可能?
更新:我试过这个......
jQuery ->
$('#search_bar').autocomplete
source: $('#search_bar').data('autocomplete-source'),
select: (event, ui) ->
$(this).parents("form").submit()
...虽然它现在可以在您使用键盘选择一个项目(然后按 Enter)时工作,但如果您通过鼠标单击选择一个项目,它只会发送您输入的字符串,而不是自动发送的完整单词完整的下拉菜单。(我想我需要的是用鼠标悬停的文本内容更新搜索字段?)
更新 2:排序!只需将其添加到末尾
focus: (event, ui) ->
$('#search_bar').val(ui.item.value)