我正在阅读有关彗星编程的很多内容,但我在想这个实现是否可行。
这是我的jscript
$.ajax({
url:"mypage.php",
onProgress:{function(rsp){ //i know there is no such function like this
$("#mydiv").append(rsp+"<br>");
}}
});
这是我的mypage.php
<?php
while(true){
ob_start();
echo time();
ob_flush();
}
?>
现在我想要的是我的ajax请求会在进度期间获取结果。这可能吗?
答案 0 :(得分:1)
要发生这件事,你必须使用彗星技术.... 请参考
答案 1 :(得分:1)
如果您只是想抓住时间,这就是轮询方式。为什么要使用资源进行无限循环。
<?php
//polling.php
if(isset($_GET['poll']) && $_GET['poll']=='1'){
$out = array('thetime'=>date("F j, Y, g:i:s a"));
echo json_encode($out);
die;
}
?>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script>
function poll(){
setTimeout(function(){
$.ajax({ url: "http://localhost/polling.php?poll=1",cache: false,
success: function(data){
//Do something with returned json
$("#time").replaceWith("<p id=\"time\">The Server Time & Date is: "+ data.thetime +"</p>");
//Next poll
poll();
}, dataType: "json"});
// 1/2 a sec
}, 500);
}
$(document).ready(function(){
poll();
});
</script>
<p id="time">The Server Time & Date is: <?php echo date("F j, Y, g:i:s a");?></p>