首页 > 解决方案 > JavaScript 使用循环处理复杂的 json

问题描述

我正在 使用json.data.schedules[0].liveVideoList,json.data.schedules[1].liveVideoList
json.data.schedules[2].liveVideoList

请告诉我如何在这里使用循环来获取所有路径

script.js 代码

var b = location.search.split('b=')[1];

$.get(
    "index2.php",
    { "b": b },
    function (data) {
        var json = JSON.parse(data);

        $.each(json.data.schedules[0].liveVideoList, function (i, v) {
            var str = v.thumbnailUrl.split("vi/").pop();

            var datee = v.publishDate.slice(0, 9);
            var timee = v.publishDate.slice(9, 20);

            var tblRows = "<tr>" + "<td>" + v.title + "</td>" + "<td>" + 0 + '  ₹' + "</td>" + "<td>" + datee + "</td>" + "<td>" + timee + "</td>" + "<td><a target='_blank' href='" + str + "'>" + "WATCH/DOWNLOAD" + "</a></td>" + "</tr>";

            $(tblRows).appendTo("#userdata");
        });
    }
);

标签: javascripthtmljsonnested

解决方案


您可以像这样使用两个循环。

$.each(json.data.schedules, function (index, schedule) {
    $.each(schedule.liveVideoList, function (i, v) {
        var str = v.thumbnailUrl.split("vi/").pop();

        var datee = v.publishDate.slice(0, 9);
        var timee = v.publishDate.slice(9, 20);

        var tblRows = "<tr>" + "<td>" + v.title + "</td>" + "<td>" + 0 + '  ₹' + "</td>" + "<td>" + datee + "</td>" + "<td>" + timee + "</td>" + "<td><a target='_blank' href='" + str + "'>" + "WATCH/DOWNLOAD" + "</a></td>" + "</tr>";

        $(tblRows).appendTo("#userdata");
    });
});

推荐阅读