Php Json数据异常行为
当通过ajax以一定的间隔加载json数据时,我体验到了一些奇怪的行为。 数据加载良好,仅在几次间隔之后,数据才会在间隔之间扰乱并保持运行。这甚至会导致浏览器崩溃 html页面Php Json数据异常行为,php,jquery,html,ajax,json,Php,Jquery,Html,Ajax,Json,当通过ajax以一定的间隔加载json数据时,我体验到了一些奇怪的行为。 数据加载良好,仅在几次间隔之后,数据才会在间隔之间扰乱并保持运行。这甚至会导致浏览器崩溃 html页面 有什么建议可以解决这个问题吗?天哪 你在递归地调用它 setInterval(ahitRate, 5000); 编辑:只需将setInterval(…)更改为setTimeout(ahitRate,5000) 每次执行时,旧的会继续运行,新的会被添加,所以它会使用越来越多的内存 $(function() {
有什么建议可以解决这个问题吗?天哪
你在递归地调用它
setInterval(ahitRate, 5000);
编辑:只需将setInterval(…)更改为setTimeout(ahitRate,5000)
每次执行时,旧的会继续运行,新的会被添加,所以它会使用越来越多的内存
$(function() {
function ahitRate()
{
$.ajax({
cache: false,
url: 'average.php',
data: 'jsonData',
dataType: 'json',
processData: false,
success: function(data)
{
var ahr = data[0]; //get id
var hitRate = data[1]; //get name
$('#output').html("<b>id: </b>"+ahr+"<b> name: </b>"+hitRate);
}
});
}
setInterval(ahitRate, 5000);
});
$(函数(){
函数ahitRate()
{
$.ajax({
cache:false,
url:'average.php',
数据:“jsonData”,
数据类型:“json”,
processData:false,
成功:功能(数据)
{
var ahr=data[0];//获取id
var hitRate=data[1];//获取名称
$('#output').html(“id:+ahr+”name:+hitRate);
}
});
}
设定间隔(ahitRate,5000);
});
唯一不同的是我:
这将导致每5秒调用一次“ahitRate()”函数。setInterval不断启动-每次收到新响应时,您都会启动一个新计时器。因此,5秒后,第一个计时器启动,然后启动另一个计时器。10秒后,两个计时器都启动,然后再启动两个计时器 我想你能看到这是怎么回事
我想您正在寻找setTimeout()方法,或者只是在success函数之外启动间隔计时器,这样就不会再调用它了。显示来自php@shyjujson输出为[“平均命中率”,20]其中数字是phpThanx为快速回复生成的随机字符串,我已推送了您在上面所做的更改,但奇怪的行为仍在发生。它工作正常,旧页面仍被我的浏览器缓存。Thnx获得帮助!!太棒了!如果解决了您的问题,请确保接受答案;)
setInterval(ahitRate, 5000);
$(function() {
function ahitRate()
{
$.ajax({
cache: false,
url: 'average.php',
data: 'jsonData',
dataType: 'json',
processData: false,
success: function(data)
{
var ahr = data[0]; //get id
var hitRate = data[1]; //get name
$('#output').html("<b>id: </b>"+ahr+"<b> name: </b>"+hitRate);
}
});
}
setInterval(ahitRate, 5000);
});