在将大量数据加载到不同的div时,想知道ajax .load的替代方法

时间:2014-05-11 12:47:08

标签: javascript jquery html

你好,我继续学习一些HTML和HTML通过尝试将一些监控系统(SCADA)复制到基于Web的系统来jquery的东西,我偶然发现openseadragon用作类似谷歌地图的MAP系统并使用它的叠加,我能够设置一个候选者来替换一个基本的系统/ off监视器在地图上显示的位置。

要做到这一点,我刚刚创建了一个简单的php文件,它从数据库中解析当前状态,只输出一个简单的div,其中包含Online for On,Offline for Off,非常简单的东西,只需添加类似于像status.php?loc = 16的php文件,我能够获得每个位置的状态。

现在我只使用ajax setInterval,只需附加一个简单的$ .load并将其指向分散在地图上的不同id(由openseadragon渲染为覆盖),我目前处于51分,一切似乎都很好,所以从技术上讲,我在setInterval中设置了51 $ .load调用5秒,我想知道是否有更清晰的方法,我肯定会接近100个div,所以这将是100个调用。并且在那一点上我不确定行为会是什么,如果我在这个过程中崩溃浏览器也不会感到惊讶,大声笑

这只是一个想法,我一直在阅读关于JSON,可能会考虑到这一点,我只是不知道如何处理目前的多个div。

这就是它的样子

$.ajaxSetup({ cache: false }); 
setInterval(function() {
    $('#pt1').load('status.php?loc=1');
    $('#pt2').load('status.php?loc=2');
    $('#pt3').load('status.php?loc=3');
    // .
    // . up to
    // .
    $('#pt99').load('status.php?loc=99');
}, 3000);

1 个答案:

答案 0 :(得分:0)

你可以这样做:

var callWorker = function(val){
    setInterval(function() {
        $('#pt1').load('status.php?loc=' + val);
    }, 3000);
}

for(var i = 100; i--;){
    callWorker(i);
}