我能够将文本区域中的任何用户类型打印到控制台上,但是控制台上的输出没有打印用户键入的最新字符。有一个结果的图片:
http://postimg.org/image/k44nyls9d/
这是我的代码:
http://postimg.org/image/ynpl53cmv/
谢谢
(对不起,我不能直接上传照片。我没有发布照片所需的10个名誉,因为我刚刚做了这个账户)
发布于 2013-11-18 08:53:36
首先,您可以在jquery中定义事件,无需将其放在HTML中。当您使用keydown时,键还没有注册,这会在触发此事件之后发生。您可以简单地绑定change、keydown & keyup来覆盖所有事件并获得正确的值。
$('#myTextarea').bind('change keydown keyup',function (){
console.log($(this).val());
});http://jsfiddle.net/KYhzK/
发布于 2013-11-18 08:52:07
您的答案在于事件,您可以使用onkeyup事件而不是onkeydown。
当您按键盘键时,onkeydown触发器
当您释放键盘键时onkeyup触发器
编辑:
由于您使用的是Jquery:
$(document).ready(function(function(){
$("#myTextarea").keyup(function(){
console.log($(this).val());
});
});发布于 2013-11-18 08:53:34
尝试将onkeydown更改为onkeyup。键下事件更可能发生在textbox更新之前,因此它将记录上一个值而不是新值。
https://stackoverflow.com/questions/20043524
复制相似问题