在 bootstrap 数据表中分页后未触发行单击事件
row click event not fired after pagination in bootstrap datatable
我正在为 pagination.I 使用 bootstrap 数据表,还向每个 row.But 添加了点击事件,点击事件仅在第一页触发。排序后不起作用或者pagination.Here是我的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());
});
});
尝试使用 $("#tblCustomers tr").on('click', function(){...}
而不是常规的 click
..
将代码更改为以下。这是电话 Event Delegation
$(function () {
$("#tblCustomers").dataTable();
$(document).on('click',"#tblCustomers tr",function(){
alert($(this).find('td:first').text());
});
});
请注意,即使是搜索和筛选也不会接受行点击事件。如果您在行中提供事件,例如单击、双击。
在过滤和搜索时确保调用包含所有自定义脚本的函数。
我正在为 pagination.I 使用 bootstrap 数据表,还向每个 row.But 添加了点击事件,点击事件仅在第一页触发。排序后不起作用或者pagination.Here是我的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());
});
});
尝试使用 $("#tblCustomers tr").on('click', function(){...}
而不是常规的 click
..
将代码更改为以下。这是电话 Event Delegation
$(function () {
$("#tblCustomers").dataTable();
$(document).on('click',"#tblCustomers tr",function(){
alert($(this).find('td:first').text());
});
});
请注意,即使是搜索和筛选也不会接受行点击事件。如果您在行中提供事件,例如单击、双击。
在过滤和搜索时确保调用包含所有自定义脚本的函数。