javascript - 提取 JSON 值并打印到 HTML
问题描述
我创建了一个 JSON 对象,我的目标是提取值并在 HTML 中列出它们。我正在尝试使用 jQuery 的.each
功能。JSON 对象如下所列。
var routeSchedule = {
"northBoundSaturday" : [
{
"station" : "stop 1",
"times": ["7:16 AM","7:36 AM","7:56 AM","8:16 AM","8:36 AM","8:56 AM","9:16 AM","9:36 AM","9:56 AM","10:16 AM","10:36 AM","10:56 AM","11:16 AM","11:36 AM","11:56 AM","12:16 PM","12:36 PM","12:56 PM","1:16 PM","1:36 PM","1:56 PM","2:16 PM","2:36 PM","2:56 PM","3:16 PM","3:36 PM","3:56 PM","4:16 PM","4:36 PM","4:56 PM","5:16 PM","5:36 PM","5:56 PM","6:16 PM","6:36 PM","6:56 PM","7:16 PM","7:36 PM","7:56 PM","8:16 PM","8:36 PM","8:56 PM","9:16 PM","9:36 PM","9:56 PM","10:16 PM","10:36 PM","10:56 PM","11:16 PM","11:36 PM","11:56 PM"]
},
{
"station": "stop 2",
"times": ["7:02 AM","7:22 AM","7:42 AM","8:02 AM","8:22 AM","8:42 AM","9:02 AM","9:22 AM","9:42 AM","10:02 AM","10:22 AM","10:42 AM","11:02 AM","11:22 AM","11:42 AM","12:02 PM","12:22 PM","12:42 PM","1:02 PM","1:22 PM","1:42 PM","2:02 PM","2:22 PM","2:42 PM","3:02 PM","3:22 PM","3:42 PM","4:02 PM","4:22 PM","4:42 PM","5:02 PM","5:22 PM","5:42 PM","6:02 PM","6:22 PM","6:42 PM","7:02 PM","7:22 PM","7:42 PM","8:02 PM","8:22 PM","8:42 PM","9:02 PM","9:22 PM","9:42 PM","10:02 PM","10:22 PM","10:42 PM","11:02 PM","11:22 PM","11:42 PM"]
},
{
"station": "stop 3",
"times": ["7:04 AM","7:24 AM","7:44 AM","8:04 AM","8:24 AM","8:44 AM","9:04 AM","9:24 AM","9:44 AM","10:04 AM","10:24 AM","10:44 AM","11:04 AM","11:24 AM","11:44 AM","12:04 PM","12:24 PM","12:44 PM","1:04 PM","1:24 PM","1:44 PM","2:04 PM","2:24 PM","2:44 PM","3:04 PM","3:24 PM","3:44 PM","4:04 PM","4:24 PM","4:44 PM","5:04 PM","5:24 PM","5:44 PM","6:04 PM","6:24 PM","6:44 PM","7:04 PM","7:24 PM","7:44 PM","8:04 PM","8:24 PM","8:44 PM","9:04 PM","9:24 PM","9:44 PM","10:04 PM","10:24 PM","10:44 PM","11:04 PM","11:24 PM","11:44 PM"]
}
],
"southBoundSaturday" : [
{
"station": "stop 4",
"times": ["6:59 AM","7:19 AM","7:39 AM","7:59 AM","8:19 AM","8:39 AM","8:59 AM","9:19 AM","9:39 AM","9:59 AM","10:19 AM","10:39 AM","10:59 AM","11:19 AM","11:39 AM","11:59 AM","12:19 PM","12:39 PM","12:59 PM","1:19 PM","1:39 PM","1:59 PM","2:19 PM","2:39 PM","2:59 PM","3:19 PM","3:39 PM","3:59 PM","4:19 PM","4:39 PM","4:59 PM","5:19 PM","5:39 PM","5:59 PM","6:19 PM","6:39 PM","6:59 PM","7:19 PM","7:39 PM","7:59 PM","8:19 PM","8:39 PM","8:59 PM","9:19 PM","9:39 PM","9:59 PM","10:19 PM","10:39 PM","10:59 PM","11:19 PM","11:39 PM"]
},
{
"station": "stop 5",
"times": ["7:01 AM","7:21 AM","7:41 AM","8:01 AM","8:21 AM","8:41 AM","9:01 AM","9:21 AM","9:41 AM","10:01 AM","10:21 AM","10:41 AM","11:01 AM","11:21 AM","11:41 AM","12:01 PM","12:21 PM","12:41 PM","1:01 PM","1:21 PM","1:41 PM","2:01 PM","2:21 PM","2:41 PM","3:01 PM","3:21 PM","3:41 PM","4:01 PM","4:21 PM","4:41 PM","5:01 PM","5:21 PM","5:41 PM","6:01 PM","6:21 PM","6:41 PM","7:01 PM","7:21 PM","7:41 PM","8:01 PM","8:21 PM","8:41 PM","9:01 PM","9:21 PM","9:41 PM","10:01 PM","10:21 PM","10:41 PM","11:01 PM","11:21 PM","11:41 PM"]
},
{
"station": "stop 6",
"times": ["7:03 AM","7:23 AM","7:43 AM","8:03 AM","8:23 AM","8:43 AM","9:03 AM","9:23 AM","9:43 AM","10:03 AM","10:23 AM","10:43 AM","11:03 AM","11:23 AM","11:43 AM","12:03 PM","12:23 PM","12:43 PM","1:03 PM","1:23 PM","1:43 PM","2:03 PM","2:23 PM","2:43 PM","3:03 PM","3:23 PM","3:43 PM","4:03 PM","4:23 PM","4:43 PM","5:03 PM","5:23 PM","5:43 PM","6:03 PM","6:23 PM","6:43 PM","7:03 PM","7:23 PM","7:43 PM","8:03 PM","8:23 PM","8:43 PM","9:03 PM","9:23 PM","9:43 PM","10:03 PM","10:23 PM","10:43 PM","11:03 PM","11:23 PM","11:43 PM"]
},
{
"station": "stop 7",
"times": ["7:04 AM","7:24 AM","7:44 AM","8:04 AM","8:24 AM","8:44 AM","9:04 AM","9:24 AM","9:44 AM","10:04 AM","10:24 AM","10:44 AM","11:04 AM","11:24 AM","11:44 AM","12:04 PM","12:24 PM","12:44 PM","1:04 PM","1:24 PM","1:44 PM","2:04 PM","2:24 PM","2:44 PM","3:04 PM","3:24 PM","3:44 PM","4:04 PM","4:24 PM","4:44 PM","5:04 PM","5:24 PM","5:44 PM","6:04 PM","6:24 PM","6:44 PM","7:04 PM","7:24 PM","7:44 PM","8:04 PM","8:24 PM","8:44 PM","9:04 PM","9:24 PM","9:44 PM","10:04 PM","10:24 PM","10:44 PM","11:04 PM","11:24 PM","11:44 PM"]
}
]
}
下面列出了 HTML 块,这只是一个参考,我需要在列表项中列出所有时间,但我唯一的问题是从 JSON 对象中获取数据。
<div>
<h1>Route Schedules</h1>
<div class="northbound">
<h2>{Stop 1}</h2>
<h3>Times</h3>
<ul>
<li>5:18</li>
<li>5:18</li>
<li>5:18</li>
<li>5:18</li>
</ul>
</div>
<div class="southbound">
<h2>{Stop 2}</h2>
<h3>Times</h3>
<ul>
<li>5:18</li>
<li>5:18</li>
<li>5:18</li>
<li>5:18</li>
</ul>
</div>
</div>
我被困在哪里:
$.each(routeSchedule.southBoundWeekday, function(key, value) {
$.each(value[times], function(time) {
console.log(time)
});
});
解决方案
尝试:
$.each(routeSchedule.southBoundSaturday, function (indx, rowElement) {
var container = $("<div class=\"southBoundSaturday\"></div>");
var title = $("<h2></h2>");
title.html(rowElement.station);
var subtitle = $("<h3>Times</h3>");
var $ul = $("<ul></ul>");
$.each(rowElement.times, function (i, rowTimes) {
var li = $("<li></li>");
li.html(rowTimes);
$ul.append(li);
});
container.append(title);
container.append(subtitle);
container.append($ul);
});
推荐阅读
- nginx - Nginx TLS-SNI:对 HTTPS 使用依赖于主机名的 SSL
- c# - 停止在一秒钟内多次处理焦点更改事件
- java - 如何正确设置 ResourceBundle 和 ClassLoader?
- java - 如何签署 jar 以与 Java Web Start 一起使用
- php - 解析 xml 文件时 SQL 语法错误
- javascript - 显示:全屏在清单 json 上不起作用
- facebook-graph-api - 如何阻止应用特定用户的 Facebook webhook 调用?
- json - Only Pulling Last Item from Tag in BeautifulSoup
- sql-server - Delphi - 登录后的多个用户(会话)(FireDAC)
- javascript - 多个javascript条件