Javascript 如何通过按Enter键将一个表中突出显示的行克隆到另一个表中

Javascript 如何通过按Enter键将一个表中突出显示的行克隆到另一个表中,javascript,jquery,html,Javascript,Jquery,Html,我有一个带有数据的HTML。单击表行后,我可以将单击的行添加到另一个表中。但我想用箭头键高亮显示该行,然后在高亮显示的行上按Enter键,将高亮显示行的数据添加到新表中 我该怎么做 到目前为止,我所尝试的: $(文档).ready(函数(){ $(“#myTable”).focus(); }); 功能突出显示(tableIndex){ if((tableIndex+1)>$('#myTable tbody tr').length)//重新启动进程 tableIndex=0; 如果($('#my

我有一个带有数据的HTML
。单击表行后,我可以将单击的行添加到另一个表中。但我想用箭头键高亮显示该行,然后在高亮显示的行上按Enter键,将高亮显示行的数据添加到新表中

我该怎么做

到目前为止,我所尝试的:

$(文档).ready(函数(){
$(“#myTable”).focus();
});
功能突出显示(tableIndex){
if((tableIndex+1)>$('#myTable tbody tr').length)//重新启动进程
tableIndex=0;
如果($('#myTable tbody tr:eq('+tableIndex+')).length>0){
$('#myTable tbody tr')。removeClass('highlight');
$('#myTable tbody tr:eq('+tableIndex+')).addClass('highlight');
}
}
$('goto#u first')。单击(函数(){
突出显示(0);
});
$('goto#u prev')。单击(函数(){
突出显示($('#myTable tbody tr.highlight').index()-1);
});
$(“#转到下一步”)。单击(函数(){
突出显示($('#myTable tbody tr.highlight').index()+1);
});
$('goto#u last')。单击(函数(){
突出显示($('#myTable tbody tr:last').index());
});
$(文档).keydown(函数(e){
开关(e.which){
案例38:
$('goto#u prev')。触发器('click');
打破
案例40:
$('goto#u next')。触发器('click');
打破
}
});
$(文档).ready(函数(){
var项目=[];
$(“#myTable tr”)。在('click',函数(e){
var newTr=$(this.close(“tr”).clone();
推送(newTr);
新附录($(“#可克隆”);
});
})
dynamictable
表{游标:指针;}
.突出显示{背景色:浅绿色;}
##
名称
代码
单元
率
1.
aaa
aa1
aa
111
1.
aaa
aa1
aa
111






## 名称 代码 单元 率
我本来打算写一个自定义响应,但看看这个,它解决了您的问题:


您的开始父div的“宽度:30%”周围也缺少了一个结束引号

我本来打算写一个自定义响应,但请注意,它解决了您的问题:

您的开始父div的“宽度:30%”周围也缺少一个结束引号

//突出显示第一行默认值
$(#myTable tbody tr:first child”).addClass(“highlight”);
document.onkeydown=移动和添加;
功能移动和添加(e){
e=e | | window.event;
如果(如键码==“38”){
//向上箭头
activeRow=$(“tr.highlight”);/*获取突出显示的行*/
activeRow.focus();
prevRow=activeRow.prev('tr');/*非常早的同级*/
如果(上一行长度>0){
activeRow.removeClass(“突出显示”);/*从活动类中删除突出显示*/
prevRow.addClass(“突出显示”);/*使上一行突出显示*/
}
}否则,如果(例如,keyCode==“40”){
//向下箭头
activeRow=$(“tr.highlight”);/*获取突出显示的行*/
activeRow.focus();
nextRow=activeRow.next('tr');/*非常早的同级*/
如果(下一步长度>0){
activeRow.removeClass(“突出显示”);
nextRow.addClass(“突出显示”);
}
}
如果(e.which==13 | | e.which==32){
//输入或空格键-编辑单元格
e、 预防默认值();
cloneRow=$(“.highlight”).clone(true);/*clone高亮显示的行*/
$(“#cloneTable”).append(cloneRow.removeClass(“highlight”);/*追加克隆行但删除类*/
}
}
表格{
颜色:黑色;
背景色:白色;
}
.亮点{
颜色:白色;
背景颜色:绿色;
}

##
名称
代码
单元
率
1.
aaa
aa1
aa
111
2.
bbb
bb2
bb
222
3.
ccc
cc3
复写的副本
333
4.
ddd
dd1
dd
444
##
名称
代码
单元
率
给你

//突出显示第一行默认值
$(#myTable tbody tr:first child”).addClass(“highlight”);
document.onkeydown=移动和添加;
功能移动和添加(e){
e=e | | window.event;
如果(如键码==“38”){
//向上箭头
activeRow=$(“tr.highlight”);/*获取突出显示的行*/
activeRow.focus();
prevRow=activeRow.prev('tr');/*非常早的同级*/
如果(上一行长度>0){
activeRow.removeClass(“突出显示”);/*从活动类中删除突出显示*/
prevRow.addClass(“突出显示”);/*使上一行突出显示*/
}
}否则,如果(例如,keyCode==“40”){
//向下箭头
activeRow=$(“tr.highlight”);/*获取突出显示的行*/
activeRow.focus();
nextRow=activeRow.next('tr');/*非常早的同级*/
如果(下一步长度>0){
activeRow.removeClass(“突出显示”);
nextRow.addClass(“突出显示”);
}
}
如果(e.which==13 | | e.which==32){
//输入或空格键-编辑单元格
e、 预防默认值();
cloneRow=$(“.highlight”).clone(true);/*clone高亮显示的行*/
$(“#cloneTable”).append(cloneRow.removeClass(“highlight”);/*追加克隆行但删除类*/
}
}
表格{
颜色:黑色;
背景色:白色;
}
.亮点{
颜色:白色;
背景颜色:绿色;
}

##
名称
代码
单元
率
1.
aaa
aa1
aa
111
2.
bbb
bb2
bb
222
3.
ccc
cc3
复写的副本
333
4.
ddd
dd1
dd
444
##
名称
有限公司