javascript - 当表格数据获得焦点并按下按键时如何触发事件?

标签 javascript jquery html

我有一些带有类名的 td 元素,当其中一个 td 处于焦点状态并且按下 F9 键时,我需要触发一个弹出窗口。我尝试过以下操作:

$(document.body).keypress(function (e) {

        $(".HolidayName").hover(function () {

            if (e.keyCode == 120) {
                //alert("first");
                SelectedItemOfListOfValue('HolidayNameWindowGrid');
                HolidayNameWindow.open(); //Open Popup
            }

        }, function () {

        });

        });

我正在使用悬停,因为焦点不能与 td 元素一起使用(根据我的搜索,不确定)。但目前的输出并不是我想要的。目前,按一次按键并将鼠标悬停在该 td 上后会触发弹出窗口。

最佳答案

试试这个。使用事件委托(delegate)来委托(delegate)“td.HolidayName”上的 keyup 事件:

$(document).on('keyup', 'td.HolidayName', function(e) {     
  if (e.which == 120) {
   SelectedItemOfListOfValue('HolidayNameWindowGrid');
   HolidayNameWindow.open(); //Open Popup
 } 

}); 

关于javascript - 当表格数据获得焦点并按下按键时如何触发事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20876632/

相关文章:

javascript - 使用javascript计算耗时

JavaScript/jQuery 事件未触发嵌套 <divs> 中的元素

添加 ui-css 后,jQuery 不会在按钮单击时重新启用文本框

javascript - 为什么这不起作用?

javascript - 带有悬停下拉菜单的购物车

javascript - 如何动态导入 SVG 并内联渲染

javascript - 如何将异构数组合并到 MongoDb 中的单个文档?

javascript - 在phonegap应用程序中显示pdf

javascript - jQuery Closest/Parent 不工作

javascript - 为什么点击事件会触发两次?