单击并触发Ajax生成的表上的函数

时间:2015-08-26 07:28:26

标签: javascript php jquery ajax

我的页面有一个ajax函数,它生成表并将它附加到div。 以下是Ajax调用的php页面。

echo "<table border='1' cellspacing='12' cellpadding='4' style='border-collapse: collapse' width='700' id='tablecat'>";

while ($row = mysql_fetch_assoc($results)) {
    $category = $row['category'];

echo "<tr bgcolor='white'>
<td class='value'>$category</td>
</tr>";
}

echo  "</table>";

然后我需要在单击表格单元格时调用另一个ajax调用。试过很多方法但没有成功。

$("#tablecat").on("click", "td", function() {

});

有人能告诉我怎么做吗? 感谢。

3 个答案:

答案 0 :(得分:0)

您的event delegation在这种情况下无效,因为$("#tablecat")也是动态创建的,您需要在其顶层引用,例如div,其中包含tablebodydocument如此:

$(document).on("click","#tablecat td", function() {
     alert('hi');
});

答案 1 :(得分:0)

我知道一个选项,你可以在AJAX成功函数中使用jQuery代码。 举个例子:

.

});

答案 2 :(得分:0)

你只需要设置

$("#tablecat").on("click", "td", function() { 

});

在函数中,当您使用ajax生成表时,成功时调用此函数。