Javascript 数据库更新后刷新datatable

Javascript 数据库更新后刷新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

在我的html页面中,有一个表显示来自数据库的数据。我想在数据库更新时刷新datatable,而不刷新所有页面。我使用的是PHP framwork Laravel


身份证件
名字
姓
电子邮件
生日
@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 &nbsp;&nbsp;&nbsp;</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;
        });
});