5

所以在正常情况下,我允许 jquery 并且我可以绑定我将使用的字段 onkeyup:

$('#something').keyup(function(e) {
    var enterKey = 13;
    if (e.which == enterKey){
        somefunction();
     }
 });

但是我不能使用它,必须使用类似的东西:

<input id="something" onkeyup="onkeyup_colfield_check(this)" type="text">
 function onkeyup_colfield_check(e){
    var enterKey = 13;
        if (e.which == enterKey){
            somefunction();
        }
}

但是,这不像上面那样工作。

我怎样才能达到与第一个示例相同的结果,但使用类似的东西?

4

1 回答 1

15

您需要event作为参数传入,而不是this.

<input id="something" onkeyup="onkeyup_colfield_check(event)" type="text">

此外,为了与所有主流浏览器完全兼容,您可能希望使用以下方法来检测按下的键的键码。

var charCode = (typeof e.which === "number") ? e.which : e.keyCode;
于 2012-12-30T02:24:34.100 回答