Javascript jQuery-ui.keyCode.TAB

Javascript jQuery-ui.keyCode.TAB,javascript,jquery,jquery-ui,Javascript,Jquery,Jquery Ui,我正在检查一个按键事件(event.keyCode==$.ui.keyCode.TAB),我始终得到- $.ui.keyCode.TAB is null or not an object. 是什么原因造成的?我是否丢失了某个.js文件?在您的代码中没有$ui.keyCode.TAB这样的东西,所以只需执行以下操作: if(event.keyCode === 9) { //TAB } $.ui.keyCode.TAB随jquery ui提供。确保已经为jQuery和jQuery UI包含了.

我正在检查一个按键事件(event.keyCode==$.ui.keyCode.TAB),我始终得到-

$.ui.keyCode.TAB is null or not an object.

是什么原因造成的?我是否丢失了某个.js文件?

在您的代码中没有
$ui.keyCode.TAB
这样的东西,所以只需执行以下操作:

if(event.keyCode === 9) { //TAB

}

$.ui.keyCode.TAB
随jquery ui提供。确保已经为jQuery和jQuery UI包含了
.js


如果仍然失败,请尝试使用
jQuery.ui.keyCode.TAB
或简单地使用
9

如果您不需要jQuery ui,则可以使用以下枚举:

if (event.keyCode == KeyCodes.Tab) {
    // some code here
}

KeyCodes = {
    BackSpace           : 8  ,
    Tab                 : 9  ,
    Enter               : 13 ,
    Shift               : 16 ,
    Ctrl                : 17 ,
    Alt                 : 18 ,
    PauseBreak          : 19 ,
    CapsLock            : 20 ,
    Esc                 : 27 ,
    PageUp              : 33 ,
    PageDown            : 34 ,
    End                 : 35 ,
    Home                : 36 ,
    ArrowLeft           : 37 ,
    ArrowUp             : 38 ,
    ArrowRight          : 39 ,
    ArrowDown           : 40 ,
    Insert              : 45 ,
    Delete              : 46 ,
    Digit0              : 48 ,
    Digit1              : 49 ,
    Digit2              : 50 ,
    Digit3              : 51 ,
    Digit4              : 52 ,
    Digit5              : 53 ,
    Digit6              : 54 ,
    Digit7              : 55 ,
    Digit8              : 56 ,
    Digit9              : 57 ,
    A                   : 65 ,
    B                   : 66 ,
    C                   : 67 ,
    D                   : 68 ,
    E                   : 69 ,
    F                   : 70 ,
    G                   : 71 ,
    H                   : 72 ,
    I                   : 73 ,
    J                   : 74 ,
    K                   : 75 ,
    L                   : 76 ,
    M                   : 77 ,
    N                   : 78 ,
    O                   : 79 ,
    P                   : 80 ,
    Q                   : 81 ,
    R                   : 82 ,
    S                   : 83 ,
    T                   : 84 ,
    U                   : 85 ,
    V                   : 86 ,
    W                   : 87 ,
    X                   : 88 ,
    Y                   : 89 ,
    Z                   : 90 ,
    WindowLeft          : 91 ,
    WindowRight         : 92 ,
    SelectKey           : 93 ,
    Numpad0             : 96 ,
    Numpad1             : 97 ,
    Numpad2             : 98 ,
    Numpad3             : 99 ,
    Numpad4             : 100,
    Numpad5             : 101,
    Numpad6             : 102,
    Numpad7             : 103, 
    Numpad8             : 104,
    Numpad9             : 105,
    Multiply            : 106,
    Add                 : 107,
    Subtract            : 109,
    DecimalPoint        : 110,
    Divide              : 111,
    F1                  : 112,
    F2                  : 113,
    F3                  : 114,
    F4                  : 115,
    F5                  : 116,
    F6                  : 117,
    F7                  : 118,
    F8                  : 119,
    F9                  : 120,
    F10                 : 121,
    F11                 : 122,
    F12                 : 123,
    NumLock             : 144,
    ScrollLock          : 145,
    SemiColon           : 186,
    Equal               : 187,
    Comma               : 188,
    Dash                : 189,
    Period              : 190,
    ForwardSlash        : 191,
    GraveAccent         : 192,
    BracketOpen         : 219,
    BackSlash           : 220,
    BracketClose        : 221,
    SingleQuote         : 222 
};

使用
$.ui.keyCode.TAB
(注意
$
后面的句点)Shawn是正确的。我复制的不正确,但句点在我的非工作代码中。你包括了所有内容吗?当您
警报($.ui.version)
时,您会看到什么?这就是问题所在。我希望能够做到这一点,但在autocomplete的根代码中,有一个与$ui.keyCode.TAB的比较,所以我不能更改它。@MichaelWarren为什么不能更改它?这是你的密码。你想做什么就做什么!LOL错误来自jquery-ui.js,它引用了ajax.googleapis.com/ajax/libs/jqueryui/1.8.9/jquery-ui.js。变化无常。你可以只使用
9
。您的代码就是带有处理程序的代码。@MichaelWarren更改您使用jquery ui的文件,而不是jquery ui本身。我包含了这两个js文件。(还有)@Michael如果你看一下
jqueryui.js
$.ui.keyCode.*
的定义接近开头。它肯定存在,除非您没有正确地包含它(jquery应该在jQueryUI之前包含)。如果您可以共享有问题的代码,可能会有所帮助。