我有一个 HTML input
文本字段。
在编辑该字段时点击“Enter”按钮时如何执行特定的 JavaScript 调用?目前,点击“Enter”会重新加载整个页面,大概是因为提交了整个表单。
注意:此 HTML/JS 代码仅作为一个 portlet 包含在门户的大型 HTML 页面中,其中有一个大型主表单一直包裹着我的代码。因此,我无法控制表单 - 无法更改 onSubmit 事件或操作或将我的 INPUT
字段包装成较小的表单 - 否则解决方案将是显而易见的:)
此外,不涉及向表单添加可见按钮的解决方案强烈更可取(我不介意添加带有显示的按钮: hidden
如果这就是它所需要的,但我这样做的尝试似乎没有奏效)。
这需要直接使用 JS - 没有可用的查询/原型(prototype)/YUI。
附言这是一个搜索字段,如果有人好奇的话,该操作将调用现有的页内 JavaScript 搜索方法。
谢谢!
最佳答案
假设你有一个类似的文本输入
<input id="myTextBox" name="foo" value="bar">
...你可以这样做,在文档加载后,它将在所有主流浏览器中工作:
document.getElementById("myTextBox").onkeypress = function(evt) {
evt = evt || window.event;
var charCode = evt.keyCode || evt.which;
if (charCode == 13) {
// Suppress default action of the keypress
if (evt.preventDefault) {
evt.preventDefault();
}
evt.returnValue = false;
// Do stuff here
}
};
关于javascript - 编辑文本输入时,如何在没有表单的 onSubmit 处理程序的情况下执行特定的 JavaScript 操作以点击 "Enter"键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1633189/