2011-05-11 184 views
-1

任何人都可以解釋什麼是這些錯誤?未捕獲類型錯誤

Uncaught TypeError: Cannot set property 'innerHTML' of null

Uncaught TypeError: Cannot read property 'style' of null

Uncaught SyntaxError: Unexpected token ILLEGAL

Uncaught TypeError: Object # has no method 'dispatchEvent'

這是我的測試Website

+2

你有沒有試過看這些消息的詳細信息的螢火蟲錯誤控制檯? – 2011-05-11 12:29:35

+0

真的應該嘗試發佈至少一些代碼進行審查,而不是隻是一些外部鏈接到某個網站。 – VisWebsoft 2018-01-22 14:10:08

回答

5

在你的頁面的一些點:

function display_price(price, oid) 
{ 
    ... 

    element = document.getElementById(oid); 
    if (valor != 'NaN' && valor != null && valor != '') 
    { 
     element.innerHTML = valor + money_simbol; 

最後一行導致錯誤,因爲element爲空。你應該添加一個條件的,如果():就是改變這一行:

if (valor != 'NaN' && valor != null && valor != '') 

這樣:

if (element && valor != 'NaN' && valor != null && valor != '') 

換句話說,這是一個很好的做法,總是檢查返回在之前訪問其屬性的功能的值。

0

您可以調用函數display_price傳遞它尚未存在的span的ID。

改變這一行:(在你的代碼中出現兩次)

display_price('510', 'products_price_id'); 

爲了這個:

window.onload = function() { 
    display_price('510', 'products_price_id'); 
}; 

這將等到頁面加載試圖找到一個元素之前,從而解決您的錯誤。