javascript - 使用 'Enter Key' 停止重新加载页面

标签 javascript jquery input

我在页面顶部有一个搜索框,当用户点击相邻的按钮时,它会发出 ajax 调用。我正在尝试更新输入标签,以便当用户按下“输入”键 时,适当的 JavaScript 会发生而无需重新加载页面。问题是页面不断重新加载。这是我最近的尝试:

$("searchText").bind('keyup', function(event){ 
  if(event.keyCode == 13){ 
    event.preventDefault();
    $("#buttonSrch").click(); 
    return false;
  }
});

<input type='search' id='searchText' />
<input type='button' id='buttonSrch' onclick="search(document.getElementById('searchText'))" value='Search' />

最佳答案

不要绑定(bind)到输入;绑定(bind)到 form。假设 form 的 ID 为 searchForm:

$("#searchForm").submit(function() {
    search($("#searchText").get(0));
    return false;
});

Try it out.

它也可以用纯 JavaScript 来完成:

document.getElementById('searchForm').addEventListener('submit', function(e) {
    search(document.getElementById('searchText'));
    e.preventDefault();
}, false);

关于javascript - 使用 'Enter Key' 停止重新加载页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8866053/

相关文章:

javascript - Websockets - 在 onmessage() 之外传递数据

javascript - 文件保护程序的 XMLHttpRequest 折旧的替代方案是什么?

Javascript 页面搜索可搜索所有关键字

javascript - 如何仅在选择某个下拉菜单项时激活输入字段

javascript - 当在文本区域中按下回车键时,如何实现立即文本提交?

javascript - jquery动态传值的方法

javascript - 将复选框数据属性与输入值相乘

javascript - 导出服务器端函数供客户端使用

javascript - 尽管页面正在刷新,但仍保存输入值

javascript - 使用内部对象 javascript 将平面数据转换为分层数据