2012-08-29 39 views
1

在我的項目中,我設計了一個JavaScript頁面來呈現HTML數據,但我得到了上述錯誤。我的代碼是:global.getElementById('...')爲空或不是對象

global.getElementById('divPartnerGrid').innerHTML = "<table width='100%'><tr><td align='middle' style='vertical-align:middle; position:centre;'><img src='../Content/images/ajax-loader(2).gif'/></td></tr><tr><td align='middle' style='vertical-align:middle; position:centre;'>"+loadingLabel+"...</td></tr></table>" 

在運行項目時,它會在此行中斷。任何人都可以讓我知道,是什麼原因導致了這個錯誤?

+2

什麼是'全球'? –

+3

是否存在ID爲'divPartnerGrid'的元素?如果'global'不是'document'並且'#divPartnerGrid'不存在,那麼這個代碼將不起作用,你必須相應地修復它。從錯誤消息看來,元素'#divPartnerGrid'不存在...所以,要麼創建這樣一個元素,要麼使用正確的ID。 –

+3

'你的風格中的位置:centre'無效 – fcalderan

回答

0

我不知道是什麼global要麼但getElementById方法在document定義所以你可能只是想

document.getElementById('divPartnerGrid').innerHTML = "..."; 
0

document取代global,即使全球是你創建的指向變量window(或全球範圍內的this),您仍然需要一個您要在其中搜索元素的文檔。

此外,確保運行此腳本之前加載頁面:你不能得到,如果它尚未加載

0

你可能已經被複制,從一個例子,全球的事情已經封裝,而全局變量的元素你還沒有這樣做。

這是在以下示例中完成的,其中文檔(可能是您希望用作其他人的文檔已指出)將文檔發送到自我封閉函數,以便該範圍內的全局實際上將引用文檔。

;(function(global) { 

    global.getElementById(/* */); 

})(document); 

這是典型的,可以在全球價值可能是從一個在瀏覽器中的不同服務器上使用庫。