2011-05-02 107 views
0
window.onload = raknaUtMedelvarde; 

function raknaUtMedelvarde(){ 

    var tabell = document.getElementById("temperaturtabell"); 
    var rader = tabell.getElementsByTagName("tr"); 

    for (var i = 0; i < rader.length; i++){ 
     var tabellcell = rader[i].getElementById("td"); 
     //räkna ut medelvärde 
     var medel = medelVarde(tabellcell); 

     var medelText = document.createTextNode(medel); 
     var medelElement = tabellcell[tabellcell.length - 1]; 
     medelElement.appendChild(medelText); 


    } 
} 

function medelVarde(celler){ 
    var summa = 0; 
    for (var i = 1; i < celler.length - 1; i++){ 

     var nuvarandeVarde = celler[i].firstChild.nodeValue; 
     summa = summa + parseInt(nuvarandeVarde); 
    } 
    return summa/5; 

按照错误控制台在Firefox这个变量 “tabellcell:VAR = tabellcell雷德[I] .getElementById(” TD “);”不是一个功能? UHN?为什么这个变量导致“不是函数”错误?

+1

更换的getElementById是否'medelVarde()'期待另一个函数作为参数? – 2011-05-02 10:35:17

+2

你也应该发布你的medelVarde()函数。 – 2011-05-02 10:37:00

+0

@ Marcel是的我,我的桌子有6个单元格... – YoniGeek 2011-05-02 10:46:17

回答

1

我认为错误是在该行

var tabellcell = rader[i].getElementById("td") 

与的getElementsByTagName

var tabellcell = rader[i].getElementsByTagName("td") 
+0

@ Marwan hihi! !!!!!!基于高校它是:getElementsByTagName(“td”) ^ _ ^)非常感谢! – YoniGeek 2011-05-02 10:48:06

+0

欢迎任何时间:) – Marwan 2011-05-02 10:48:37

+0

只是请不要忘记标记我的答案是一个正确的,如果它对你有用 与我的方面:) – Marwan 2011-05-02 10:49:20

3

不能使用

rader[i].getElementById("td");

的getElementById是文档对象的方法。 rader变量包含我假设的其他一些对象(元素对象)。

元素对象只有getElementsByTagNamegetElementsByClassName您可以使用它们。

+0

@Headshota不,我的错误... – YoniGeek 2011-05-02 10:39:12

+0

我编辑了我的帖子 – Headshota 2011-05-02 10:42:22

+0

我以为是相同的,但这不是该错误的原因: http://jsfiddle.net/fkling/VPq8y/1/ – 2011-05-02 10:49:33

相关问题