2011-06-16 44 views
1

我目前有一個Perl腳本,可以打印一些HTML表格和div,打印<script type="text/javascript">標籤,然後分出幾個進程來收集一些數據以填充表格。這些分叉進程異步打印JavaScript document.getElementById語句以填充表格和div。我的Perl腳本等待所有子進程,並且一旦它們全部返回,就會打印結束標記</script>使用Javascript更新頁面加載期間的表格/ div內容

儘管可能不是過於優雅,但這是我用異步返回結果填充有序表格的方式。我真的很想看到表格加載的內容作爲結果返回,但Firefox在接收到</script>標記之前似乎不呈現JavaScript。有沒有辦法讓每個document.getElementById陳述在發送到瀏覽器時強制呈現?我可以打印每個語句的開始和結束腳本標記,但這看起來過多。我不知道如何處理顯示一堆異步語句,但我願意接受所有建議。

謝謝!

回答

2

你必須用獨立的腳本塊來完成。在完成之前,沒有瀏覽器會開始運行<script>塊;它由於語言的語義而不能不能

0

您的描述很混亂。 document.getElementById()不是陳述,它不是一個語言結構,而是一個方法document主對象

document.getElementById什麼都不會導致瀏覽器重新顯示頁面。它只是在document中選擇具有給定ID的元素。

在不知道這個不斷更新輸出的原因的情況下很難說出任何內容,但是您可能別無選擇,只能使用單獨的<script>塊來連續執行它們。

+0

感謝您對我的描述和解決方案的說明。 – xsquared 2011-06-16 17:21:30