Javascript 数据库更新后刷新datatable
在我的html页面中,有一个表显示来自数据库的数据。我想在数据库更新时刷新datatable,而不刷新所有页面。我使用的是PHP framwork LaravelJavascript 数据库更新后刷新datatable,javascript,php,html,laravel,Javascript,Php,Html,Laravel,在我的html页面中,有一个表显示来自数据库的数据。我想在数据库更新时刷新datatable,而不刷新所有页面。我使用的是PHP framwork Laravel 身份证件 名字 姓 电子邮件 生日 @foreach($users作为$user) {{$user->id} {{$user->name} {{$user->name2} {{$user->email} {{$user->生日} @endforeach setTimeout(函数(){ $(“#mytable”).load(“y
身份证件
名字
姓
电子邮件
生日
@foreach($users作为$user)
{{$user->id}
{{$user->name}
{{$user->name2}
{{$user->email}
{{$user->生日}
@endforeach
setTimeout(函数(){
$(“#mytable”).load(“your-current-page.html#mytable”);
}, 2000);
刷新表
$(文档).ready(函数(){
函数刷新表(){
$(“#mytable”).load(“your-current-page.html#mytable”);
}
$(#刷新btn”)。在(“单击”,刷新表格);
//或者可以这样吗
//
//$(“刷新btn”)。在(“单击”,函数()上{
//$(“#mytable”).load(“your-current-page.html#mytable”);
// });
});
使用这个软件包,它很棒,我一直都在使用它。这是datatables.net的laravel包装
使用jQuery的示例。注意,这只是1000种方法中的一种。这只是概述了使用AJAX和Laravel构建表过程的基本思想。它并不意味着是代码段中的一部分 基本表格代码
<table id="example" class="table">
<thead>
<tr class="headings">
<th>ID </th>
<th>first name </th>
<th>last name </th>
<th>E-mail </th>
<th>birthday </th>
</tr>
</thead>
<tbody>
<?php // empty for now ?>
</tbody>
</table>
JavaScript
function updateTable() {
$.ajax({
url: "ajax/getUpdatedTable",
success: function (data) {
$("#example tbody").html(data);
}
});
}
$(document).ready(function () {
updateTable();
setInterval(updateTable, 5000); //Re-update every 5 seconds
});
如评论中所述,您可以使用类似于
jQuery
的框架来构建实时模块
$( document ).ready( function () {
$.get('generic-handler.php')
.done( function (data) {
$('#realtime').innerHTML = data;
});
});
在PHP文件中,您可以将代码放在数据库中,然后将其包装在setInterval
中,以便每隔X
秒发送一次请求
文档:
使用任何javascript框架(如jQeury/Vuejs)将查询发送到数据库并显示它。如何做到这一点,您能给我举个例子吗
function updateTable() {
$.ajax({
url: "ajax/getUpdatedTable",
success: function (data) {
$("#example tbody").html(data);
}
});
}
$(document).ready(function () {
updateTable();
setInterval(updateTable, 5000); //Re-update every 5 seconds
});
$( document ).ready( function () {
$.get('generic-handler.php')
.done( function (data) {
$('#realtime').innerHTML = data;
});
});