一个简单的JS监听回车键的问题 大家看看

jiashu912387 2010-01-08 03:46:06
下面是我的代码


if (document.addEventListener)
{//如果是Firefox
document.addEventListener("keypress", fireFoxHandler, true);
} else
{
document.attachEvent("onkeypress", ieHandler);
}
function fireFoxHandler(evt)
{
//alert("firefox");
if (evt.keyCode == 13)
{
defaultlogin();

}
}
function ieHandler(evt)
{
//alert("IE");
if (evt.keyCode == 13)
{
defaultlogin();

}
}





每次回车键按下去后就会调用defaultlogin();这个方法
现在有个问题就是如果用户多次按回车就会重覆调用defaultlogin()
我想能不能有个方法可以监听到当前用户是第几次按下回车 或者 有什么方法可以禁用掉俺回车键



...全文
1036 6 打赏 收藏 举报
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
jiashu912387 2010-01-09
  • 打赏
  • 举报
回复
嘿嘿 2楼的方法 其实 更明确点 谢谢大家
Inpool 2010-01-08
  • 打赏
  • 举报
回复
应该是++enterCount,不是++i,写习惯了-_-||
Inpool 2010-01-08
  • 打赏
  • 举报
回复
设一个全局变量,每次检查就OK了
var enterCount = 0;
function ieHandler(evt)
{
//alert("IE");
if (evt.keyCode == 13)
{
switch (++i){
case 1:
//do something
break;
case 2:
//do something
break;
default:
defaultlogin();
}
}
}
wtcsy 2010-01-08
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 jiashu912387 的回复:]
我想能不能有个方法可以监听到当前用户是第几次按下回车 或者 有什么方法可以禁用掉俺回车键
[/Quote]
在defaultlogin()里面加个回掉函数吧
记录他是第几次按

or

直接

document.onkeypress = null; 禁用监听
草根醉秋意 2010-01-08
  • 打赏
  • 举报
回复
定义一个变量,在第一次按下回车的时候设置其为true,如果这个变量的值为true,不再执行方法
jiashu912387 2010-01-08
  • 打赏
  • 举报
回复
都来看看哇。。。。没人回答哇。。。
发帖
JavaScript

8.7w+

社区成员

Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
帖子事件
创建了帖子
2010-01-08 03:46
社区公告
暂无公告