天天看點

javascript:使用document.getElementById讀取資料為空分析

  今天寫個網頁,想在頁面加載onLoad時,動态顯示由背景其他程式傳來的資料時,用document.getElementById擷取控件對象總是為空。但是檢查了這個id确實是存在的。在網上查閱一番後才知道了其中的原因。

  1.下面是一個簡單的例子,頁面加載時顯示一段資訊

  執行後,确實是“在頁面加載前,輸出了資訊”。

  2.下面的例子會出現document.getElementById為空的情況。

  我的計劃是:在頁面加載時,在<body></body>的文本框中顯示由背景處理來的資料,比如這裡的字元串“hello, my friend!”。但是這裡通過通過document.getElementById讀取的是對象為空。

  因為onLoad方法在頁面<body></body>加載之前執行,此時id="mes"對應文本框的文本框,還沒有加載進去。

  3.解決辦法  

  在加載Html網頁時,會加載<html></html>中的是以資料。先加載<head>,再加載<body>。

  是以我們可在</body>之後,在</html>之前寫入javascript就好了。程式順序執行,執行到相應的javascript調用就可以執行。不是用onLoad方法。

  代碼如下: