我正在尝试在 html div 中加载 php 文件的输出。我已经用 jQuery 的 ($('div').load(url_here))
方法尝试过,它工作正常,但我的 php 文件如下:
<?php
for( $i = 0 ; $i < 10 ; $i++ )
{
echo date('h:i:s').'<br>';
//flush the output buffer
flush();
//send the output buffer
ob_flush();
//sleep here
sleep(1);
} ?>
现在这个php文件每秒打印一行,但是当我在html的div中加载这个php时,页面加载后需要10秒,然后将10行加在一起。我想加载 div 作为 php 文件每秒返回一行。我的意思是,我希望 html 的响应与 php 相同(即每秒加载一行,所以在第一秒它应该加载第一行,在第二秒它应该添加第二行,依此类推)。那么,有可能吗? (P.S - 我是这个动态网络的初学者)
最佳答案
为了每分钟得到结果,你必须每分钟打开一个ajax请求,在javascript中控制时间,而不是在php中。
尝试:
var timer = window.setInterval(function()
{
$('div').load(url_here);
}, 1000);
并删除 php 中的 for
循环和 sleep()
。
更新:
要保留结果的历史记录,请尝试以下操作:
var content = $('div').text();
$('div').load(url_here).append(content);
关于javascript - 根据php文件的输出动态加载html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26000583/