Chi*_*ekh 4 php jquery datatables
我正在为我的应用程序使用JQuery Datatable.我有一个简单的代码,显示我的所有客户端和一个脚本,该脚本在表行的单击时触发.现在,问题是,这适用于第一页,但是,对于所有其他页面,行上的点击事件未被识别.请在下面找到数据表和脚本库的代码.
// viewAllClients.php
<table id="view_all_entries" >
<thead>
<tr>
<th>Name</th>
<th>City</th>
</tr>
</thead>
<tbody>
<?php
$values = Client::all();
foreach ($values as $value)
{?>
<tr class="options" data-val="{{$value->name}}" data-id="{{$value->id}}">
<td>{{$value->name}}</td>
<td>{{$value->city}}</td>
</tr>
<?php }
?>
</tbody>
</table>
//default.js
$('#view_all_entries').DataTable( {
"aaSorting": [[ 2, "desc" ]],
"iDisplayLength": 30,
"sPaginationType": "full_numbers"
} );
$('#view_all_entries .options').click(function(){
var id = $(this).closest('tr').data('id');
document.location.href = $('#route_path').val()+'/'+id + '/edit';
});
Run Code Online (Sandbox Code Playgroud)
真的很感激任何帮助.谢谢.
所以,根据Halcyon的回答,我发现我需要对事件委托进行一些小改动.我希望以下代码可以帮助其他人解决同样的问题.
//default.js
$('body').delegate('#view_all_entries .options', 'click', function () {
var id = $(this).closest('tr').data('id');
document.location.href = $('#route_path').val()+'/'+id + '/edit';
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2934 次 |
| 最近记录: |