2013-07-29 98 views
1
each(data, function(i, elem) { 
    var url = image_path + elem["c_no"] + "$" + elem["p_date"] + "$" + elem["time_slot"] + "$" + elem["d_name"] + ".jpg"; 
    var new_row = '<td align="middle">' + elem["p_date"] + '</td>'; 
    new_row += '<td align="middle">' + elem["d_name"] + '</td>'; 
    new_row += '<td align="middle">' + '<a href="#" class="x"> AAAAA </a>' + '</td>'; 
    var appendRow = '<tr>' + new_row + '</tr>'; 
    $('#pres tr:last').after(appendRow); 
}); 


$('table#pres td a.x').click(function() { 
    console.log("ITWORKS"); 
}); 

我试过上面的代码段,以显示网页上的一些链接动态。它工作正常,但我需要点击链接后做点什么。jquery链接点击不起作用

回答

3

您必须为动态添加的元素执行Event delegation

$('table#pres').on('click','td a.x',function() { 

    console.log("ITWORKS"); 

}); 
5

使用on()

$('#pres').on("click", "td a.x", function() { 
    console.log("ITWORKS"); 
}); 

这将附加click事件处理程序,所有现有的和将来创建匹配的元素。