代码之家  ›  专栏  ›  技术社区  ›  Kevin B

cfflush似乎不适用于chrome和ie

  •  -3
  • Kevin B  · 技术社区  · 14 年前

    我有一个脚本需要提交到iframe并获取返回值。但是,我提交到的coldfusion页面需要进行额外的处理,这与返回值无关,因此我希望将值返回到iframe,然后将iframe重定向到about:blank,然后再进行其余的处理,这样用户就不必等待。

    我认为cfflush是这里的理想解决方案,但它似乎只在firefox中工作。IE和Chrome都会等到整个脚本运行完毕,忽略cfflush标记。这不起作用,因为处理脚本(将文件上载到外部服务器)可能需要很长时间,浏览器就会超时。

    测试:CFM: http://pastebin.com/Jj1njg5z

    Junk.CFM:

    <cfset thread = CreateObject("java", "java.lang.Thread")>
    About to sleep for 5 seconds...
    <script>parent.loadComplete('Done Loading.')</script><cfflush>
    <cfset thread.sleep(5000)>
    Done sleeping.
    

    我用的是jquery和coldfusion mx 6

    谢谢你的阅读。

    1 回复  |  直到 6 年前
        1
  •  5
  •   James Hill    12 年前

    有时,当浏览器感觉没有足够的内容时,它不会“绘制”。我在IE中看到了很多。试试这个:

    <cfoutput>#repeatString(" ",250)#</cfoutput>