动态绑定";按键;在javascript中 成功:函数(数据){ $.each(data.top[field]。术语,函数(索引,结果){ $(''+result.term+'['+result.count+']') .appendTo($('.input list wrapper',$tooltip)) .data('字段',字段) .data('value',result.term) .focus() .bind('keypress',函数(e){ console.log('test'); 如果(如keyCode===13){ $term.trigger('updateTerm',$(this.data('value')); } }) }); }

动态绑定";按键;在javascript中 成功:函数(数据){ $.each(data.top[field]。术语,函数(索引,结果){ $(''+result.term+'['+result.count+']') .appendTo($('.input list wrapper',$tooltip)) .data('字段',字段) .data('value',result.term) .focus() .bind('keypress',函数(e){ console.log('test'); 如果(如keyCode===13){ $term.trigger('updateTerm',$(this.data('value')); } }) }); },javascript,dynamic,bind,keypress,keycode,Javascript,Dynamic,Bind,Keypress,Keycode,我无法动态绑定按键事件。如果我将.bind调用替换为.mouseenter或.mouseover,它将按预期工作。我尝试了.on.keypress.keyDown.live(.live给了我一个未定义的函数错误)。确保为浏览器定义了keypress行为。根据jQuery文档:。另外,您正在将按键事件绑定到li元素?请记住,他们必须有焦点才能触发按键事件。我已经确保触发焦点,但似乎没有帮助。不知道如何使用keypress动态地工作。首先,如果您使用document.onkeypress的旧方法,那

我无法动态绑定按键事件。如果我将.bind调用替换为.mouseenter或.mouseover,它将按预期工作。我尝试了.on.keypress.keyDown.live(.live给了我一个未定义的函数错误)。

确保为浏览器定义了
keypress
行为。根据jQuery文档:。另外,您正在将按键事件绑定到
li
元素?请记住,他们必须有焦点才能触发按键事件。我已经确保触发焦点,但似乎没有帮助。不知道如何使用keypress动态地工作。首先,如果您使用document.onkeypress的旧方法,那么它可以工作吗?我想知道这是JQuery问题还是真正的Javascript问题error@user3662516您是否尝试过jQuery
.keyup(函数(e){…})
success: function(data) {
            $.each(data.top[field].terms, function(index, result) {
                $('<li>' + result.term + ' [' + result.count + ']</li>')
                    .appendTo($('.input-list-wrapper', $tooltip))
                    .data('field', field)
                    .data('value', result.term)
                    .focus()
                    .bind('keypress', function(e) {
                        console.log('test');
                        if (e.keyCode === 13) {
                            $term.trigger('updateTerm', $(this).data('value'));
                        }
                    })                                              
            });
}