我想每 1 秒更新一次我的姓名列表,所以我尝试 setinterval() 但它会循环。有什么解决办法吗?
<script>
getcus();
function getcus(){
$(document).ready(function() {
$.get('<?php echo base_url();?>index.php/site/get_all_customer_ajax', function (data) {
var obj = JSON.parse(data)
for (var i=0;i<obj.customer.length;++i)
{
$('#names').append(obj.customer[i].first_name + "<br>");
}
});
});
setInterval(getcus, 1000);
};
输出
玛丽亚
何塞
克拉克
玛丽亚
何塞
克拉克
玛丽亚
何塞
克拉克
玛丽亚
何塞
克拉克
无限远..
最佳答案
在追加之前清空#name div setTimeout getfocus 函数,因为它会调用自身,所以在这种情况下不需要 setInterval。在成功回调中使用 setTimeout 以确保下一个请求将在第一个请求成功后调用
$(document).ready(function() {
getcus();
});
function getcus(){
$.get('<?php echo base_url();?>index.php/site/get_all_customer_ajax', function (data) {
var obj = JSON.parse(data);
$('#names').empty();
for (var i=0;i<obj.customer.length;++i)
{
$('#names').append(obj.customer[i].first_name + "<br>");
}
setTimeout(getcus, 1000);
});
};
关于javascript - 我想使用 setInterval() 每 1 秒更新一次输出列表,但它会得到无限循环输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39176897/