我创建了自定义JS函数,它使用键盘来处理表行。实际上,我使用向上/向下键选择行(预览详细信息),然后按Enter键以模拟双击(编辑详细信息)。
效果很好,您可以在http://jsfiddle.net/n6hn2/19/查看工作示例 只需专注于桌面并尝试向上/向下/输入并查看控制台..
为什么这对选择器不起作用,比如
$('#' + tableid).on('keyup', 'tbody', function(e) {...
也尝试'tbody tr'作为选择器,$('#' + tableid + ' tbody tr')
但没有尝试。
当我在输入框中输入内容(search_article
)和HIT Enter时,我的函数DblClick被触发。事实上,没有选择器就没问题,但我不希望这样。
答案 0 :(得分:1)
默认情况下,tbody
元素不可聚焦,您需要在tbody上设置任何tabindex属性,例如:
tabindex="-1"
请使用CSS大纲查看完整的DEMO:
#tableid :focus {outline:none;}
那么,你可以在tbody上使用keyup处理程序:
$('#' + tableid).on('keyup', 'tbody', function(e) {...});
答案 1 :(得分:0)
<table id="tableid" tabindex="0">
和
$("#tableid").on('keyup', function(){
console.log("2");
});
答案 2 :(得分:0)
我已经分叉了代码,这个小提琴似乎工作正常:http://jsfiddle.net/5mxS2/
最大的区别是on
现在附加到input
这样:
$('#' + tableid + ' input').on('keyup', function(e) {
alert('up');
});