我每秒钟用ajax编写一次自动刷新div的代码,但是我希望自动刷新div,即使数据不是每秒更改一次。有什么更好的方法?
JavaScript
<script>
setInterval(function(){
$('#datapinjam').load('/datarealtime');
}, 30000)
</script>
刀片代码
<div class="table-responsive mt-3">
<table id="basic-datatable" class="table dt-responsive nowrap">
<thead>
<tr>
<th>ID</th>
<th>Inventaris</th>
<th>No Handphone</th>
<th>Mulai</th>
<th>Selesai</th>
<th>Tanggal</th>
<th>Keperluan</th>
<th>Status</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<tr>
@foreach ($peminjaman as $value)
....
@endforeach
</tbody>
</table>
</div>
控制器代码
public function realtime()
{
$data['peminjaman'] = DB::table('data_peminjaman')
->join('inventaris', 'data_peminjaman.id_invetaris', '=', 'inventaris.id')
->orderBy('data_peminjaman.iid','desc')
->paginate(10);
return view('admin.realtime',$data);
}
答案 0 :(得分:1)
您应该在控制器let A
中创建一个函数,并在客户端脚本let B
中创建一个函数。 B
将在一定间隔后探测A
。如果数据发生更改,A
将返回True
,否则返回False
。 B
在遇到True
中的A
时会调用客户端负责刷新包含Ajax调用的div
的函数。