Javascript 如何在PHP中使用jQuery定期获取数组的n个项?
假设我有两个div。我必须用数组的前两个元素填充它们。然后自动刷新div,它们将由数组的下两项自动填充。这应该重复到数组结束。遍历每个元素后,自动刷新应停止 例如,我的数组中有8个元素和2个div(mydiv1和mydiv2)。我希望在每一秒之后,div都能刷新自己。第一次mydiv1包含A1,第二次mydiv2包含A2,第二次mydiv1=B1,mydiv2=B2……以此类推4次 我的xyz.php文件Javascript 如何在PHP中使用jQuery定期获取数组的n个项?,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,假设我有两个div。我必须用数组的前两个元素填充它们。然后自动刷新div,它们将由数组的下两项自动填充。这应该重复到数组结束。遍历每个元素后,自动刷新应停止 例如,我的数组中有8个元素和2个div(mydiv1和mydiv2)。我希望在每一秒之后,div都能刷新自己。第一次mydiv1包含A1,第二次mydiv2包含A2,第二次mydiv1=B1,mydiv2=B2……以此类推4次 我的xyz.php文件 <?php //echo rand(); $questions=ar
<?php
//echo rand();
$questions=array(
"A1",
"A2",
"B1",
"B2",
"C1",
"C2",
"D1",
"D2"
);
?>
我的index.php文件
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
var auto_refresh = setInterval(
function ()
{
$('#mydiv1').load('xyz.php').fadeIn("slow");
}, 1000); // refresh every 1000 milliseconds
});
</script>
</head>
<body>
<div id="mydiv1"> </div>
<div id="mydiv2"> </div>
</body>
$(文档).ready(函数(){
var auto_refresh=setInterval(
函数()
{
$('#mydiv1').load('xyz.php').fadeIn(“slow”);
},1000);//每1000毫秒刷新一次
});
对您上一个问题中Barmar的代码进行了一些更改
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
var counter=0;
var auto_refresh = setInterval(function() {
$.getJSON('xyz.php', function(data) {
$("#mydiv1").html(data[counter]);
$("#mydiv2").html(data[counter+1]);
counter+=2;
if (counter > 6) {
clearInterval(auto_refresh);
}
});
}, 1000);
});
</script>
</head>
<body>
<div id="mydiv1"> </div>
<div id="mydiv2"> </div>
</body>
PHP
<?php
$questions=array(
"A1",
"A2",
"B1",
"B2",
"C1",
"C2",
"D1",
"D2"
);
echo json_encode($questions);
?>
$(文档).ready(函数(){
var计数器=0;
var auto_refresh=setInterval(函数(){
$.getJSON('xyz.php',函数(数据){
$(“#mydiv1”).html(数据[计数器]);
$(“#mydiv2”).html(数据[counter+1]);
计数器+=2;
如果(计数器>6){
clearInterval(自动刷新);
}
});
}, 1000);
});
PHP
谢谢,它工作顺利,符合我的要求。我对这个解决方案中的一点表示怀疑。你在哪里施加了边界条件?如果setInterval被调用4次,那么接下来会发生什么。我们不应该在某个地方使用clearInterval吗?@nkp现在检查解决方案绝对正确。再次感谢你,曼尼什。我会接受你的回答。