怎么避免onkeydown 和 onblur 事件的冲突?

cyw359764840 2010-06-21 05:43:06
文本框里面 我有 onblur事件 和 onkeydown事件
<input id='std' MaxLength='20' type='text' class='StdTxt' onblur='blurStd(this);' onfocus='focusStd(this);' onkeydown='if(event.keyCode==13 && !this.value.trim().isNull()){blurStd(this);return false;}'/>
两者都是为了 提交 可是 我在回车后 执行的是onkeydown事件 但是 按完回车相应的焦点就失去同时又执行了 onblur事件
结果就是弹出一样的对话框两次 我想让他回车后 不执行 onblur事件 该怎么解决

下面是我方法中相应的代码 alert("你输入的规格 " + txt.value + " 已存在,请重新输入!");这句话弹了两次
for (var j = 0; j < rdos.length; j++) {
var s = rdos[j].value.split(',');
if (s[0] != a[1]) {
if (s[1] == txt.value) {
alert("你输入的规格 " + txt.value + " 已存在,请重新输入!");
txt.focus();
txt.value="";
txt.className = "StdTxt1";
}
}
}
...全文
257 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
cyw359764840 2010-06-23
  • 打赏
  • 举报
回复
可以啊? 谢谢
  • 打赏
  • 举报
回复
onkeydown里不要直接去调blurStd,把焦点转出去就是了。这样就会执行onblur。

87,907

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧