【问题标题】:How can i show my JSON data to another html page in html table?如何将我的 JSON 数据显示到 html 表中的另一个 html 页面?
【发布时间】:2020-02-29 14:58:03
【问题描述】:

这是第一页:

scoreSubmit() {
  var name = prompt("Unesi svoje ime:");
  var objekat = {
    "name": name,
    "score": score
  };
  var myJSON = JSON.parse(localStorage.getItem("textvalue"));
  myJSON[myJSON.length] = objekat;

  var sort = false;
  while (!sort) {
    sort = true;
    for (var i = 0; i < myJSON.length - 1; i++) {
      if (myJSON[i + 1].score > myJSON[i].score) {
        var temp = myJSON[i];
        myJSON[i] = myJSON[i + 1];
        myJSON[i + 1] = temp;
        sort = false;
      }
    }
  }
  localStorage.setItem("textvalue", JSON.stringify(objekat));
}

这是我第二页上的代码

  var myJSON=JSON.parse(localStorage.getItem("textvalue"));

  var bodycontent="";

  for(var i =0;i<myJSON.length;i++){
               bodycontent +="<tr>";
               bodyContent += "<td>" + (i + 1) + ".</td><td class='name'>" + myJSON[i].name + "</td><td>" + myJSON[i].score + "</td>";
               bodyContent += "</tr>";


   }
   document.getElementById("leaderboardBody").innerHTML =bodycontent;

但是由于某种原因,如果 JSON 数据没有显示在表格上。你知道我哪里出错了吗?任何帮助都需要我很多!

【问题讨论】:

  • 你想用这段代码实现什么?
  • @shiva 恕我直言,OP 代码的预期目的非常明确 - 在一个页面上生成一些数据,并将其显示在网站的不同页面上,使用 localstorage 在请求之间存储数据。我认为他们在存储数据时犯了一个小错误 - 请参阅下面的答案。 :-)

标签: javascript html json local-storage


【解决方案1】:
localStorage.setItem("textvalue", JSON.stringify(objekat));

看起来不对。你肯定打算写

localStorage.setItem("textvalue", JSON.stringify(myJSON));

否则它只会将一个对象值写入本地存储,而检索现有列表、添加到它并进行排序的整个目的是没有意义的。此外,如果您尝试使用您的第二页代码处理单个对象,它将没有长度(因为它不是数组),因此不会运行循环以创建 HTML。

【讨论】:

  • 我检查了,还是不行。我尝试为 js 游戏创建排行榜,我的想法是当游戏结束时,用户将在输入字段上写一个名称,并在另一个 html 页面上写入分数,然后按最高分排序跨度>
  • “不起作用”具体如何?你做了什么调试?您是否收到任何类型的错误消息?您是否尝试记录任何值以查看实际从本地存储中保存和加载的内容?有问题的两个页面是否都来自相同的来源(即相同的协议、主机名和端口号)?你需要缩小问题的范围。我无法运行您的代码为自己找到它,也无法修复“不起作用”,因为这不是错误消息或问题描述。
  • 我可以把我的项目发给你吗?
  • 不,我不会遍历您的所有代码并运行它来查找细节。 需要对其进行调试,然后在此页面上提供必要的信息。那么它不仅对您有用,而且对将来阅读的其他人有用(这是本网站的真正目的)。谢谢。您是否了解上面我要求您检查的所有内容?如果您对调试代码不是很熟悉,那么现在是学习的好时机。对于任何程序员来说,这都是一项至关重要的技能。
  • 那么,如果您不确定如何处理您的调试结果,或者如何解决它发现的问题,您可以将信息添加到您的问题中,以便我们帮助您解决它完全。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-10-06
  • 1970-01-01
  • 1970-01-01
  • 2020-02-03
  • 1970-01-01
  • 2019-01-08
  • 1970-01-01
相关资源
最近更新 更多