【问题标题】:How to display a server object variable in HTML如何在 HTML 中显示服务器对象变量
【发布时间】:2016-05-17 12:49:48
【问题描述】:

我目前能够显示从服务器发送的对象,如下所示:

 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 脚本中包含了建议的代码,但它似乎不起作用,引发的唯一错误与推文中的字符有关

【问题讨论】:

  • 您不想摆脱编码字符。相反,您希望将它们转换回到它们的原始表示。
  • 您可以从这里开始:jsfiddle.net/tmzfwsyu/3
  • 感谢您的回复,我现在看看
  • @BelowtheRadar 我已尝试实施您的建议,但似乎不起作用。我已将您的代码包含在 html 页面上的脚本中,在我的 javascript 文件中,但似乎都不起作用。

标签: javascript html object


【解决方案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);
}

【讨论】:

  • 感谢您的回复,不幸的是,这似乎仍然无法生成表格。包含 tweetTable 的 div 不显示任何表格
  • 如果你做 console.log(json) 你有一个有效的 javascript 对象吗?
  • 是的,我什至尝试使用我提供的示例对象
  • 所以问题出在您的表格 html 上。请参阅此工作演示:jsfiddle.net/tmzfwsyu/4
  • 我仍然无法像在 jsfiddle 上那样工作,HTML 页面可以在这里找到:pastebin.com/Nb1c8uhd
猜你喜欢
  • 2015-11-05
  • 2017-01-30
  • 1970-01-01
  • 2020-09-11
  • 2018-12-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多