在页面加载期间使用Javascript更新表/ div内容

时间:2011-06-16 17:06:29

标签: javascript perl asynchronous execution continuous

我目前有一个打印一些HTML表格和div的Perl脚本,打印一个开放的<script type="text/javascript">标签,然后分叉几个进程来收集一些数据来填充表格。这些分叉进程异步打印JavaScript document.getElementById语句以填充表和div。我的Perl脚本等待所有子进程,并且一旦它们返回所有返回的打印结束</script>标记。

虽然也许并不过分,但这就是我用异步返回的结果填充有序表的方法。我非常希望在返回结果时看到表的内容加载,但Firefox在收到</script>标记之前似乎没有呈现JavaScript。有没有办法在发送到浏览器时强制渲染每个document.getElementById语句?我可以用每个语句打印开始和结束脚本标签,但这似乎过多了。我不确定如何处理显示一堆异步语句,但我对所有建议持开放态度。

谢谢!

2 个答案:

答案 0 :(得分:2)

你必须使用单独的脚本块。在完成之前,任何浏览器都不会开始运行<script>块。由于语言的语义,它不能

答案 1 :(得分:0)

您的描述有点混乱。 document.getElementById()不是语句,它不是语言构造,而是document 主机对象的方法

document.getElementById不会导致浏览器重新呈现页面。它只是选择document中具有给定ID的元素。

如果不知道不断更新输出的原因,很难说什么,但你可能别无选择,只能使用单独的<script>块来连续执行它们。