在 onKeydown 函数中获取当前元素

Rit*_*tta 3 javascript jquery twitter-bootstrap

我正在编写一个函数,当按下键盘上的某个键时将调用该函数,如何访问按下该键的文本框的值。我的代码是

function isValid(evt,that){

console.log('coming to this 1');
var charCode = (evt.which) ? evt.which : event.keyCode;
console.log(that.val());
return true;
}

$(document).on('keydown','.is_valid',isValid);
Run Code Online (Sandbox Code Playgroud)

如何获取当前从键盘获取输入的文本框的值?请指导如何实现这一点

Dav*_*mas 5

我建议:

function isValid(evt) {
    var charCode = (evt.which) ? evt.which : event.keyCode,
        self = evt.target;
    console.log(self.value);
    return true;
}

$(document).on('keydown', '.is_valid', isValid);
Run Code Online (Sandbox Code Playgroud)

JS 小提琴演示

只要该事件对函数可用,您就可以使用适当命名的event.target. 如果您需要将其作为 jQuery 对象,并且可以访问 jQuery 方法,您可以使用:$(event.target)

您还可以使用:

self = evt.currentTarget;
Run Code Online (Sandbox Code Playgroud)

JS 小提琴演示

或者:

self = document.activeElement;
Run Code Online (Sandbox Code Playgroud)

JS 小提琴演示

参考: