jQuery箭头键盘功能在我的表格的最后一行添加文本框时停止

时间:2015-06-10 11:11:08

标签: javascript jquery

这是我的jquery代码,我想继续我的箭头键功能。

$(document).ready(function () {
 $('input').keyup(function (e)  {

    switch (e.keyCode) {
        case 37:
           // alert('left');      
          $(this).closest('td').prev().find('input').focus();  
            break;
        case 38:
          // alert('up');
             $(this).closest('tr').prev().find('td:eq(' + $(this).closest('td').index() + ')').find('input').focus();
            break;
        case 39:
           // alert('right');
            $(this).closest('td').next().find('input').focus();  
            break;
        case 40:
           // alert('down');            
            var checkRow = $(this).closest('tr').index() + 1;
            var totalRows = $(this).closest('tbody').find('tr').length;

            if (checkRow == totalRows)
            {
                    //here's my additional table row
                     var add= $(this).closest('tr').clone().appendTo($(this).closest('tbody').parent());
                     //i want to continue arrows key for additional textbox in my new row. 
            }

             $(this).closest('tr').next().find('td:eq(' + $(this).closest('td').index() + ')').find('input').focus();   

            break;
    } }); });

1 个答案:

答案 0 :(得分:0)

您不能将keyup个事件添加到新创建的input中。而不是$('input').keyup(fn)仅将事件添加到现有input使用$(document).on('keyup', 'input', fn)。当它到达每个input选择器时,它会监听文档并触发。 API documentation中的示例。