我正在使用bootstrap数据表进行分页。我还为每一行添加了click事件。但是click事件只在第一页中触发。排序或分页后它不起作用。这是我的PHP代码来显示数据
<table id='tblCustomers' class='table table-bordered table-striped'>
<thead>
<tr>
<th>Customer id</th>
<th>Company</th>
<th>First name</th>
<th>Last name</th>
<th>Email</th>
<th>Last login</th>
<th>No Of logins </th>
</tr>
</thead>
<tbody>";
foreach ($this->result as $row) {
echo "<tr>
<td>{$row['customerid']} </td>
<td>{$row['company']} </td>
<td>{$row['firstname']} </td>
<td>{$row['lastname']} </td>
<td>{$row['email']} </td>
<td>{$row['lastlogin']} </td>
<td>{$row['count']}</td>
</tr>";
}
echo "</tbody></table>";
,jquery代码是
$(function () {
$("#tblCustomers").dataTable();
$("#tblCustomers tr").click(function(){
alert($(this).find('td:first').text());
});
});
答案 0 :(得分:7)
将代码更改为以下。这是致电Event Delegation
$(function () {
$("#tblCustomers").dataTable();
$(document).on('click',"#tblCustomers tr",function(){
alert($(this).find('td:first').text());
});
});
答案 1 :(得分:0)
尝试使用$("#tblCustomers tr").on('click', function(){...}
代替常规click
..
答案 2 :(得分:0)
请注意,即使搜索和过滤器也不会进行行点击事件。如果您在行上提供事件,例如点击,请双击。
在过滤器和开启搜索时,请确保调用包含所有自定义脚本的函数。