【问题标题】:javascript keypress enter keyjavascript keypress 输入键
【发布时间】:2011-12-14 11:07:39
【问题描述】:
我在表单之外有一个输入字段<input type="text" name="input" />,因此当用户按下回车键时它不会提交。我想知道用户何时在不提交的情况下按下回车键,以便我可以运行一些 JavaScript。我希望它可以在所有主流浏览器中运行(虽然我不关心 IE)并且是有效的 JavaScript。
仅供参考:jQuery 是一种选择
【问题讨论】:
标签:
javascript
jquery
input
keypress
【解决方案1】:
$("input[name='input']").keypress(function(e) {
//13 maps to the enter key
if (e.keyCode == 13) {
doSomeAwesomeJavascript();
}
})
function doSomeAwestomeJavascript() {
//Awesome js happening here.
}
【解决方案2】:
我不会使用 jQuery,这也适用于 IE
var input = document.getElementsByName("input")[0];
if (input.addEventListener)
input.addEventListener("keypress", function(e) {
if (e.keyCode === 13) {
// do stuff
e.preventDefault();
}
}, false);
else if (input.attachEvent)
input.attachEvent("onkeypress", function(e) {
if (e.keyCode === 13) {
// do stuff
return e.returnValue = false;
}
});