我使用easyautocomplete插件(http://easyautocomplete.com/guide),我使用一些自定义JavaScript绑定keydown事件来搜索输入,当用户按下“ ENTER”时,该输入会将页面重定向到建议页面 , 但是,即使用户从建议列表中选择一个项目并按Enter,它也会重定向页面。 easyautocomplete提供了一个“ onKeyEnter”事件,该事件仅在从建议中选择一个项目后按“ Enter”键时触发
这是我添加的自定义代码
file, err := os.Create(localitem)
因此,当我们通过向上箭头和向下箭头键从建议列表中选择任何项之后,按Enter键时,我需要停止这种重定向。
easyautocomplete已经有一个事件处理程序,仅捕获列表建议中的“ Enter”按,即,当我们在手动编写内容后仅在输入字段上按Enter时,将不会捕获事件功能
那我该怎么做以防止在eventHandler函数中进行重定向
jQuery("#input_field").keydown( {
if(e.which == 13) {
document.location = "/search_results.php";
}
});
我不想从输入中永久删除“重定向”操作,只是想避免在特定情况下使用,这就是为什么我不能使用 onKeyEnter : function(){
// stop redirect
.........
.......
}
谢谢!
更新
我不确定这是否是最好的方法,但是.off()
为我做了工作
window.stop()
谢谢!
答案 0 :(得分:1)
您可以引入全局变量,例如:
let canRedirect = true;
,对于停止重定向,请将其设置为false
。在keypress
处理程序中,只需扩展条件:
if (e.which == 13 && canRedirect) {}