Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法使用Jquery通过onclick事件处理程序将行添加到动态生成的表中_Jquery_Rows - Fatal编程技术网

无法使用Jquery通过onclick事件处理程序将行添加到动态生成的表中

无法使用Jquery通过onclick事件处理程序将行添加到动态生成的表中,jquery,rows,Jquery,Rows,我正在动态创建表,并将行动态附加到表中,所有这些都是通过Jquery完成的,动态创建表很好,但不将行附加到表中,这就是我的代码的样子,按钮上的onclick事件处理程序什么也没做,我哪里出错了?但是,如果我硬编码tableID,它似乎可以工作,比如:$(“#1tr:last”).after(newRow) 谢谢你们的时间,伙计们 $(document).ready(function() { var tableID =

我正在动态创建表,并将行动态附加到表中,所有这些都是通过Jquery完成的,动态创建表很好,但不将行附加到表中,这就是我的代码的样子,按钮上的onclick事件处理程序什么也没做,我哪里出错了?但是,如果我硬编码tableID,它似乎可以工作,比如:$(“#1tr:last”).after(newRow)

谢谢你们的时间,伙计们

    $(document).ready(function()
        {               
            var tableID = 1;
            $('#btnAddSOWG').click(function(){createNewGroup(tableID++);});

            function createNewGroup(RecID) 
            {                   
                var table       = document.createElement('table'); 
                table.id        = RecID;
                var newRow      = table.insertRow();
                var oCell       = newRow.insertCell();
                oCell.innerHTML = "Work Group : <input type='text' name='t1'>";                                 

                var button      = document.createElement('input'); 
                button.type     = "button"; 
                button.id       = 'btn'+ RecID; 
                button.value    = 'Add Work Item';                  
                button.onclick  = function(){createNewItem(RecID);}

                oCell.appendChild(button);

                $('body').append(table);
            } 


            function createNewItem(tableID)
            {                                   
                var selector = "#" +tableID;
                var newRow= "<tr><td><input type='text' name='t1'><td></tr>";   
                $(selector," tr:last").after(newRow);

            } 
        });
    </script>
$(文档).ready(函数()
{               
var-tableID=1;
$('#btnAddSOWG')。单击(函数(){createNewGroup(tableID++);});
函数createNewGroup(RecID)
{                   
var table=document.createElement('table');
表1.id=累进;
var newRow=table.insertRow();
var oCell=newRow.insertCell();
oCell.innerHTML=“工作组:”;
var按钮=document.createElement('input');
button.type=“button”;
button.id='btn'+RecID;
button.value='添加工作项';
button.onclick=function(){createNewItem(RecID);}
oCell.appendChild(按钮);
$('body')。追加(表);
} 
函数createNewItem(tableID)
{                                   
var选择器=“#”+tableID;
var newRow=“”;
$(选择器,“tr:last”)。在(newRow)之后;
} 
});
HTML:


在createNewItem方法中尝试以下方法:

$(selector+" tr:last").after(newRow);

我想应该是“+”而不是“,”。

@Karthi,太棒了!现在只需再查询一次,是否可以动态创建此行并向其中添加onblur事件?"";假设您已经有一个表行,那么可以使用clone方法轻松地动态添加新行<代码>$(选择器+“tr:last”).clone(true).insertAfter(选择器+“tr:last”)。要添加模糊,请参阅@Karthi,此行$(选择器+“tr:last”).clone(true).insertAfter(选择器+“tr:last”);当它应该执行createNewItem(tableID)函数正在执行的操作时,只是动态地构建新表。是的,它构建了一个新行。onblur事件可以使用
$(“:input”).live('blur',function(){//do stuff})捕获
$(selector+" tr:last").after(newRow);