2017-01-09 59 views
0

我將數據從我的websocket傳遞到數組中。我想將數組傳遞給document.getElementById。最終我想在div中顯示我的數據。我越來越null is not an object (evaluating 'document.getElementById('temp').innerHTML')如何將數組傳遞到getElementByID

的JavaScript

socket.on('data_added', function(mess){ 


console.log(mess); 
var x =[]; 
x.push(mess); 
console.log(x); 

    var datetime = []; 
    var humidity = []; 
    var temp = []; 
    for(var i =0; i < x.length; i++) 
    { 
     datetime.push(x[i].datetime); 
     humidity.push(x[i].humidity) 
     temp.push(x[i].temperature) 
    } 



    temp = document.getElementById('temp').innerHTML ; 
    humidity = document.getElementById('humidity').innerHTML; 

    console.log(datetime); 
    console.log(temp); 
    console.log(humidity); 
}); 

我的數據 [{datetime: "2017-01-09T02:07:38.490Z", temperature: 19, humidity: 23}]

我希望得到任何幫助。

+0

分配在JavaScript周圍工作的其他方式......指定目的=來源.... –

回答

0

拋出的異常意味着您的頁面上沒有標籤,其ID爲'temp'。 我認爲你需要寫水木清華這樣的:

socket.on('data_added', function(x){ 
 
    if(typeof x === "string") { 
 
    \t x = JSON.parse(x); 
 
    } 
 

 
    var datetime = []; 
 
    var humidity = []; 
 

 
    for(var i =0; i < x.length; i++) { 
 
    datetime.push(x[i].datetime); 
 
    humidity.push(x[i].humidity) 
 
    } 
 

 
    document.getElementById('temp').innerHTML = datetime ; 
 
    document.getElementById('humidity').innerHTML = humidity; 
 

 
    console.log(datetime); 
 
    console.log(humidity); 
 
});
<div id="temp"></div> 
 
<div id="humidity"></div>

+0

感謝您response.I工作稍作修改。 – Ekom