2016-03-15 19 views
0

我對發送JSON數據的servlet進行ajax調用。我用JSON.parse()解析它,並把它放到一個字符串中,以html的表格標籤顯示。但是對於每一行單元格數據,它都會顯示NaN。我檢查了沒有NaN的數據。爲什麼nan被添加到數據中?

這是代碼。

var dataFromJSON = JSON.parse(result); 
var count = dataFromJSON.count; 
var str = "<table id='customers'><tr><th>LOGGED DATE</th></tr>"; 
for (var i = 0; i < count; i++) { 
    str += "<tr><td>" + dataFromJSON.records[i].common.logged_date + 
    +"</td>"; 
    str += "</tr>"; 
} 
str += "</table>"; 
$("#data").html(str); 

數據在dataFromJSON.records[i].common.logged_date2016-02-23 10:11:43,但表顯示2016-02-23 10:11:43NaN

請幫忙。

+0

'NaN' =不是一個數字。某處轉換失敗。 –

+0

NaN:不是數字 – Apb

+4

你有一個太多的concat'+'運算符。 –

回答

1

這裏:

str += "<tr><td>" + dataFromJSON.records[i].common.logged_date+ 
       + "</td>"; 

你之後另外兩個+。瀏覽器試圖將該空白解釋爲數字

刪除+之一。

+0

誰會低調解決思想解釋什麼是錯的答案? –

1

你已經把++請只使用+

var dataFromJSON = JSON.parse(result); 
var count = dataFromJSON.count; 
var str = "<table id='customers'><tr><th>LOGGED DATE</th></tr>"; 
for (var i = 0; i < count; i++) { 
    str += "<tr><td>" + dataFromJSON.records[i].common.logged_date +"</td>"; //chnage here 
    str += "</tr>"; 
} 
str += "</table>"; 
$("#data").html(str); 
相關問題