获取jQuery keypress事件的输入文本值

vit*_*tto 11 javascript jquery

可能重复:
jQuery在按键后获取输入值

我正试图input textjQuery .keypress()功能上获得价值.我已经看过使用keypress和keydown的各种示例,但并不专注于获取输入值.可能吗?

$(document).ready(function(){
    $("#my_field").keydown (function (e) {
        alert (e);
    });
});
Run Code Online (Sandbox Code Playgroud)

返回的对象有一系列属性,但我还没有看到值输入字段属性.

有没有办法得到它?

Nic*_*ver 12

我不清楚你在这之后是什么意思,如果你在写完这封信后,不是整个价值,你可以使用String.fromCharCode(),例如:

$(document).ready(function(){
  $("#my_field").keydown (function (e) {
     alert (String.fromCharCode(e.which));
  });
});
Run Code Online (Sandbox Code Playgroud)

你可以在这里尝试一下

  • 当我尝试从键盘输入数字时,结果与我不是从键盘输入数字的结果不同。 (2认同)

Sar*_*raz 5

我正在尝试获取输入文本值

使用val():

$("#my_field").keydown (function (e) {
    alert ($(this).val());
});
Run Code Online (Sandbox Code Playgroud)

假设这#my_field是输入字段的id,你想得到的值.

  • 这不包括刚刚按下的角色. (46认同)
  • 在keydown函数内部,添加此项以包含刚按下的键setTimeout(function(){console.log($('#search').val())},5) (4认同)
  • 正如@ superjoe30所说,它不包括刚被按下的角色.真正的解决方案是获取`keyup`事件的输入值:http://stackoverflow.com/questions/8795283/jquery-get-input-value-after-keypress (4认同)
  • 为了获得最佳结果,从而输入最后一个字符,请使用keyup.http://api.jquery.com/keyup/在输入最后一个字符后触发键盘,而在输入最后一个字符之前输入keydown. (2认同)