2016-05-17 46 views
-1

顯示服務器對象變量我目前能夠顯示從它看起來像這樣的服務器發送的對象:如何在HTML

var tweets = { 
"PaoIotics": [ 
     "@JoshCannon99 @hanks_h @MCFC it's QPR. He's done nothing big since that other than 1 game vs Bayern." 
    ], 
    "YadavDhital": [ 
     "RT @ArronMCFC: @YadavDhital @MCFC cheers, for supporting city since 2008 +" 
    ], 
    "GoodKunManCity": [ 
     "@Binky_Ferrari @stuff_mcfc @ManCityArmy1894 @cfcMode no I meant since he said failure isn't an option but look at this season lol" 
    ], 

現在我要修改此對象,它可以是在HTML頁面上很好地顯示,但我不確定如何做兩件事。首先,是否可以遍歷該對象並刪除已添加的所有不需要的字符,即顯示而不是引號的"。其次,將對象轉換爲HTML表格的最佳方式是什麼?

編輯:

var tweets = <%= tweets %>; 
for (var t in tweets) { 
    var row = $('<row></row>'); 
    row.append('<th style="border:1px solid black">' + t + '</th><td style="border:1px solid black">' + tweets[t][0]+ '</td>'); 
    $("#tweetTable").append(row); 
} 

我已經包含在我的HTML腳本建議的代碼,但它似乎沒有工作,丟棄的唯一錯誤是相對於字符鳴叫

+0

你不想甩掉ENC的字符。相反,你想將它們轉換回原來的表示形式。 – FreeAsInBeer

+0

它不是服務器對象,看起來你正在獲得JSON結果。你可以遍歷json對象並生成動態HTML表格,例如http://codepedia.info/create-dynamic-html-table-using-jquery/ –

+0

你可以從這裏開始:https://jsfiddle.net/ tmzfwsyu/3/ –

回答

1

我想你將不得不取消轉義您的字符串(使用replace()功能),然後將其轉換(使用JSON.parse())反對:

var tweets = <%= tweets %>; 
var json = JSON.parse(tweets.replace(/&#34;/g, '\"')); 

for (var t in json) { 
    var row = $('<row></row>'); 
    row.append('<th style="border:1px solid black">' + t + '</th><td style="border:1px solid black">' + json[t][0]+ '</td>'); 
    $("#tweetTable").append(row); 
} 
+0

謝謝你的迴應,不幸的是,這似乎還沒有產生一個表。包含tweetTable的div不顯示任何表 – user4357505

+0

如果你做console.log(json)你有一個有效的javascript對象嗎? –

+0

是的,我甚至嘗試過使用我提供的示例對象 – user4357505