2017-09-27 70 views
1

夥計們,JSON格式HTML CELL表

我有以下要求:

我將有一個HTML表格行日誌列表,其中一些線路將包含JSON字符串,我想在從磁盤加載HTML文件時,將表格中的JSON格式化。我幾乎在那裏,看到JSFiddle。我只是不能似乎得到它的表格單元格的格式:

http://jsfiddle.net/yh7bsd51/

var table = document.getElementById("report"); 
for (var i = 0, row; row = table.rows[i]; i++) 
{ 
    col = row.cells[0]; 
    //if(innerHTML == JSON) 
    col.innerHTML = (syntaxHighlight(JSON.stringify(col.innerHTML, undefined, 4))); 
} 

var s = {"Id":"124578","oId":"11","Type":"2"}; 
var ss = JSON.stringify(s, undefined, 4); 
+1

好的,我粗略地忽略了將for循環的起始索引更改爲1 –

回答

1

與細胞內的格式化的問題是,你是一個字符串,而不是對象調用JSON.stringify。看看這個小提琴:http://jsfiddle.net/zu7zs5b1/。請注意這部分:

for (var i = 0, row; row = table.rows[i]; i++) { 
    col = row.cells[0]; 
    //if(innerHTML == JSON) 
    try { 
     jsn = JSON.stringify(JSON.parse(col.innerHTML), undefined, 4); // <-- proper JSON str 
     col.innerHTML = (syntaxHighlight(jsn)); 
    } catch (e) { 
     console.log("Fail"); 
    } 
} 

有點不好意思,但它完成了工作。

+1

,謝謝Hans,這正是我所需要的,我剛剛添加了一個Pre將其格式化爲多行,http:// jsfiddle。淨/ r1fcf55e / –