Jquery getScript或ajax与php flush的结合

Jquery getScript或ajax与php flush的结合,php,javascript,jquery,ajax,html,Php,Javascript,Jquery,Ajax,Html,我需要在搜索时列出项目。 在服务器端php脚本完成它的工作时,我不想使用某种加载符号、无限进度或其他任何东西,而是希望在服务器端找到结果后立即显示它们 PHP侧接缝非常容易执行,只是一个伪造的10倍结果(server.PHP): 但是,这种组合需要等待服务器端脚本在执行10个jquery命令之前完全完成。如何让JQuery在收到命令后立即执行这些命令 我唯一的想法是加载一个屏幕外的iframe,并要求在这个iframe中加载server.php页面,但是,我被困在这个iframe中…你不能,你必

我需要在搜索时列出项目。 在服务器端php脚本完成它的工作时,我不想使用某种加载符号、无限进度或其他任何东西,而是希望在服务器端找到结果后立即显示它们

PHP侧接缝非常容易执行,只是一个伪造的10倍结果(server.PHP):

但是,这种组合需要等待服务器端脚本在执行10个jquery命令之前完全完成。如何让JQuery在收到命令后立即执行这些命令


我唯一的想法是加载一个屏幕外的iframe,并要求在这个iframe中加载server.php页面,但是,我被困在这个iframe中…

你不能,你必须实现或使用它

试试这个:

var s = document.createElement('script');
s.type = 'text/javascript';
s.src = 'test.php';
$('head').append(s);

好的,休息几天后我就把这个工作做好了。。(我是新爸爸!) 基本上就是这样做的:

在文档上创建一个不可见的iframe,并在其中加载远程php文件。这个php文件可以将一些javascript内容刷新到这个iframe中,这是我发现的让它按顺序显示的唯一方法

例如,我运行了以下测试:

<?
header( 'Content-type: text/html; charset=utf-8' );
echo '<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>';
$i = 0;
while($i < 10)
    {
        ?>
        <script type="text/javascript">

        $(window.parent.document).find('#subfolder13').append('<div class="folderline"><div class="closedfolder" style="margin-left:48px;"></div>Pecq</div>')

        </script>
        <?
        flush();ob_flush(); 
        usleep(200000); //0,2s
        $i++;

    }
?>

$(window.parent.document).find(“#子文件夹13”).append('Pecq'))

我一开始并不关心繁重的查询负载,因为这是与调用方帧完全相同的文件,所以在99%的情况下,这个文件是新缓存的。如果真的需要,这可能是纯javascript,不会改变背后的想法。

即使我使用$.getScript,脚本也会在2秒的php脚本完成后执行……谢谢,但不幸的是,它没有。(在server.php页面生成后执行)
var s = document.createElement('script');
s.type = 'text/javascript';
s.src = 'test.php';
$('head').append(s);
<?
header( 'Content-type: text/html; charset=utf-8' );
echo '<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>';
$i = 0;
while($i < 10)
    {
        ?>
        <script type="text/javascript">

        $(window.parent.document).find('#subfolder13').append('<div class="folderline"><div class="closedfolder" style="margin-left:48px;"></div>Pecq</div>')

        </script>
        <?
        flush();ob_flush(); 
        usleep(200000); //0,2s
        $i++;

    }
?>