我查看了一些相关问题,但没有人帮助我弄清楚我的问题。
我有自己的动态数据网格表单从头开始构建,可以添加/删除数据行和字段列。我正在尝试提高可用性,以便按Enter键将创建一个新的字段列和把重点放在它上面。到目前为止,这是执行此操作的代码:
$('#data_fields').on('keydown','._field',function(e){
if(e.which==13)
{
$('#addfield').click();
var o=$(this).parent().parent();
var l=$(o).children().length-2;
var f=$(o).find("td:eq("+l+")").find("._field");
$(f).focus();
}
});
#addfield
是一个按钮,可在单击时添加字段列。
._field
是一个输入框,其中写入了字段的名称。
#data_fields
是包含其中包含._field
个输入框的单元格的tr。
但是,新列中的._field
输入框没有特殊的超元素keydown功能。更重要的是,如果我将('#data_fields')
的{{1}}选择器更改为.on()
,它甚至不会为当前元素提供keydown回调。
这是HTML,抱歉它有点乱,但我在PHP中使用模板和东西:
(document)
答案 0 :(得分:2)
从我可以告诉它的内容,因为被追加的输入类中没有_field
类。