我一直在搜索并尝试如何在更新数据时刷新另一个页面或刀片文件。就我而言,每当我单击call.blade.php中的 Call Next 按钮时,数据将在wintwo.blade.php中更新或更改。
控制器存储代码
$call = Call::find($request->id);
$call->user_id = Auth::user()->id;
$call->counter_id = Auth::user()->counter_id;
$call->called = 'YES';
$call->save();
return response()->json($call);
call.blade.php javascript代码
<script type="text/javascript">
$('#update').click(function(){
$.ajax({
type:'post',
url: 'updatecall',
data:{
'_token':$('input[name=_token]').val(),
'id':$('input[name=call_id]').val(),
},
success:function(data){
window.location.reload();
setInterval(function() {
$('#update').load('{{ action('DetailController@index') }}');
}, 1000);
},
});
}); </script>
wintwo.blade.php javascript代码
<script type="text/javascript">
$(document).ready(function () {
window.setTimeout(function () {
window.location.href = '/queue'; // "/queue" is the url route for wintwo.blade.php
}, 2000);
}
</script>
它不起作用。我进行了很多搜索,并尝试了所有尝试,但无济于事。
答案 0 :(得分:1)
您必须使用Web套接字服务,例如 Pusher https://pusher.com/docs
答案 1 :(得分:1)
您可以使用Socket编程(例如Laravel WebSockets)或将node.js与socket.io包一起使用来实现。 带有Node.js的Socket.io很容易学习。 https://socket.io/get-started/chat