我有一个图表,每 5 秒更新一次,以显示有多少用户进入建筑物,并且用户可以选择每个楼层有多少用户。这也是每 5 秒更新一次
下面是我的代码,用于让用户进入建筑物
var interval = 5000;
function get_Users() {
var users= $.ajax({
type: 'POST',
url: '<?php echo base_url('index.php')?>/building/feed',
data: $(this).serialize(),
success: function (users) {
$('.current').html(users);
},
complete: function (users){
setTimeout(get_Users, interval);
}
});
}
setTimeout(doFeed, interval);
下面用于获取各楼层的用户
$(document).on('change','.floor',function(){
$.ajax({
url: 'floor/chart',
type: 'post',
data: asset,
dataType: 'json',
success: function (users) {
$(".current").html(users.floor);
},
});
});
我需要做的是一旦成功更改,每 5 秒发布并获取图表值..
如何做到这一点?任何帮助将不胜感激。
最佳答案
您可以通过为 change
处理程序创建一个命名函数来实现这一点,并在第一个函数完成后触发 timeout
函数,就像您为代码中的其他函数所做的那样。
$(document).on('change','.floor',changeFloorHandler);
function changeFloorHandler() {
$.ajax({
url: 'floor/chart',
type: 'post',
data: asset,
dataType: 'json',
success: function (users) {
$(".current").html(users.floor);
},
complete: function (users){
setTimeout(changeFloorHandler, interval);
}
});
}
注意:我建议您在代码中使用通用的 ajax
函数,并使用自定义参数保存 callback
函数引用以实现超时
而不是多个函数定义以避免冗余代码。
关于javascript - 在更改事件中每 5 秒执行一次 jquery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34329204/