如何在html表中单击一行

Ara*_*ese 1 javascript jquery html-table

我有这个Javascript函数,它在html中创建一个表.这正是我想要的.

var thead = '<table><thead><tr><td>#</td><td>Name</td><td>Id</td></tr></thead><tbody>\n';
for(var i=0; i<dataArray.length; i++)
{
    tbody += '<tr class="row">';
    tbody += '<td>' + (i+1) + '</td>';
    tbody += '<td>' + dataArray[i].Device_Name + '</td>';
    tbody += '<td>' + dataArray[i].Device_Id + '</td>';         
    tbody += '</tr>\n';     
}
var tfooter = '</tbody></table>';
document.getElementById('dataTableDiv').innerHTML = thead + tbody + tfooter;
Run Code Online (Sandbox Code Playgroud)

现在我想在每次点击某一行时运行一些代码.现在,只要正在执行代码,哪个行是单击并不重要.这是应该处理行单击的代码.所有其他单击操作在内部完美地工作$(document).ready(function(){});但由于某种原因,表的单击处理程序不起作用.

$(document).ready(function()
{
    $(".row").click(function() 
    {
        console.log("Blablabla")
    });
});
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

Kar*_*sla 6

因为您是从Jquery动态生成HTML所以尝试事件委托,如下所示: -

$(document).on('click','.row',function(){
    // Your Code...
});
Run Code Online (Sandbox Code Playgroud)

要么

$(document.body).on('click','.row',function(){
    // Your Code...
});
Run Code Online (Sandbox Code Playgroud)

或(在回答中添加Jai的有用评论)

$('#dataTableDiv').on('click','.row',function(){
    // Your Code...
});
Run Code Online (Sandbox Code Playgroud)