onkeydown,onkeyup,onkeypass 为什么onkeydown,onkeypass取不到输入的第一个字符onkeyup却又执行2次???有什么解决方法吗?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 上测试代码,不存在你说的情况阿<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <script type="text/javascript"> function keydown(e) { //alert("keydown:" + e.keyCode); } function keyup(e) { alert("keyup:" + e.keyCode); } function keypress(e) { //alert("keypress:" + e.keyCode); }</script></head> <body> <input type="text" size="10" onkeydown="keydown(event);" onkeyup="keyup(event);" onkeypress="keypress(event);" /></body> </html> onkeydown,onkeypress顾名思义,是按键按下时就响应事件onkeyup怎么会执行2次呢,按键起来时执行一次如果要用onkeydown,onkeypress,可以用String.fromCharCode(event.keyCode)来取得值 对某个元素的 onkeydown,onkeypass,onkeyup三个事件相互独立的,执行的顺序依次是1,onkeydown, 2,onkeypass, 3,onkeyup <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <script type="text/javascript"> function keydown(e) { var s="keydown:" + String.fromCharCode(e.keyCode)+ "\r\n"; show(s); } function keyup(e) { var s="keyup:" + String.fromCharCode(e.keyCode) + "\r\n"; show(s); } function keypress(e) { var s="keypress:" + String.fromCharCode(e.keyCode)+ "\r\n"; show(s); } function show(s) { var o=document.getElementById('s'); o.innerHTML +=s; }</script></head> <body> <input type="text" size="10" onkeydown="keydown(event);" onkeyup="keyup(event);" onkeypress="keypress(event);" /> <br /> <textarea id='s' rows="20" cols="20"></textarea></body> </html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML> <HEAD> <TITLE> New Document </TITLE> <META NAME="Generator" CONTENT="EditPlus"> <META NAME="Author" CONTENT=""> <META NAME="Keywords" CONTENT=""> <META NAME="Description" CONTENT=""> </HEAD> <BODY> <INPUT TYPE="text" NAME="dd" onkeydown="alert(event.keyCode+':'+this.value);" /> </BODY></HTML>//输入d,返回 "68:" <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML> <HEAD> <TITLE> New Document </TITLE> <META NAME="Generator" CONTENT="EditPlus"> <META NAME="Author" CONTENT=""> <META NAME="Keywords" CONTENT=""> <META NAME="Description" CONTENT=""> </HEAD> <BODY> <INPUT TYPE="text" NAME="dd" onkeydown="alert(event.keyCode+':'+String.fromCharCode(event.keyCode));" /> </BODY></HTML> 中文输入会有问题,其它的需要判断,但也会存在问题,假如我是从字符串中间写入呢?lz可以用onkeyup、onpropertychange、oninput这样去判断,或许效果会好一点 5楼的代码 onkeydown 跟onkeyup 都是执行两次 急 , 很急 ! 灰常急 ! 在线等 ! 求教关于 JS 面向对象的一点小问题 ... 初学者 求javascript教程 ajax 跨域上传 [求助]浮动广告问题! access查看数值范围的问题,为嘛,显示乱七八糟的?求解! easyui tree 怎么把一个tree的节点拖拉到另一个tree去 请我这个隐藏显示层的函数为什么运行不了? 怎样建立一个动态的菜单树? 急!!!!!!怎样用代码实现打开文件浏览窗口? 也谈网页中嵌入word,方法与示例 JavaScript闭包基础问题 prototype 1.4 Form对象中getInputs怎么用?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
function keydown(e)
{
//alert("keydown:" + e.keyCode);
}
function keyup(e)
{
alert("keyup:" + e.keyCode);
}
function keypress(e)
{
//alert("keypress:" + e.keyCode);
}
</script>
</head>
<body>
<input type="text" size="10" onkeydown="keydown(event);" onkeyup="keyup(event);" onkeypress="keypress(event);" />
</body> </html>
onkeyup怎么会执行2次呢,按键起来时执行一次
如果要用onkeydown,onkeypress,可以用String.fromCharCode(event.keyCode)来取得值
对某个元素的 onkeydown,onkeypass,onkeyup三个事件相互独立的,执行的顺序依次是1,onkeydown, 2,onkeypass, 3,onkeyup
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
function keydown(e)
{
var s="keydown:" + String.fromCharCode(e.keyCode)+ "\r\n";
show(s);
}
function keyup(e)
{
var s="keyup:" + String.fromCharCode(e.keyCode) + "\r\n";
show(s);
}
function keypress(e)
{
var s="keypress:" + String.fromCharCode(e.keyCode)+ "\r\n";
show(s);
}
function show(s)
{
var o=document.getElementById('s');
o.innerHTML +=s;
}
</script>
</head>
<body>
<input type="text" size="10" onkeydown="keydown(event);" onkeyup="keyup(event);" onkeypress="keypress(event);" />
<br />
<textarea id='s' rows="20" cols="20"></textarea>
</body> </html>
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD> <BODY>
<INPUT TYPE="text" NAME="dd" onkeydown="alert(event.keyCode+':'+this.value);" />
</BODY>
</HTML>//输入d,返回 "68:"
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
</HEAD> <BODY>
<INPUT TYPE="text" NAME="dd" onkeydown="alert(event.keyCode+':'+String.fromCharCode(event.keyCode));" />
</BODY>
</HTML>
lz可以用onkeyup、onpropertychange、oninput这样去判断,或许效果会好一点