【问题标题】:Slicing a JSON array to get first five objects切片 JSON 数组以获取前五个对象
【发布时间】:2013-06-28 09:51:18
【问题描述】:

我有一个 JSON 文件,其中正在读取对象并将它们显示在 div 中。但我只需要显示五个对象而不是全部。

下面是我正在使用的代码

$.each(recentActdata.slice(0,5), function(i, data) {
            var ul_data = "<li><h3>"+ renderActionLink(data)+ "</h3></li>";
            $("#recentActivities").append(ul_data);
        });

但是这个切片似乎不起作用。我的 JSON 格式是

[   
{ 
    "displayValue":"Updated Guidelines", 
    "link":"#",
    "timestamp":"29/06/2013 01:32"
},
{ 
    "displayValue":"Logging", 
    "link":"#",
    "timestamp":"28/06/2013 16:19"
},
{ 
    "displayValue":"Subscribe", 
    "link":"#",
    "timestamp":"21/06/2013 14:30"
},
{ 
    "displayValue":"Artifactory Vs Nexus", 
    "link":"#",
    "timestamp":"21/06/2013 13:39"
},
{ 
    "displayValue":"CTT - Java 7", 
    "link":"#",
    "timestamp":"20/06/2013 13:30"
},
{ 
    "displayValue":"Added Artifactory Server", 
    "link":"#",
    "timestamp":"19/06/2013 23:39"
},
{ 
    "displayValue":"Estimation Template", 
    "link":"#",
    "timestamp":"19/06/2013 23:39"
},
{ 
    "displayValue":"GZIP compression in Tomcat", 
    "link":"#",
    "timestamp":"14/06/2013 23:39"
},
{ 
    "displayValue":"HBase Basics", 
    "link":"#",
    "timestamp":"12/06/2013 23:39"
}
 ]

请建议如何实现这一点。我无法为我的 JSON 命名。

【问题讨论】:

    标签: javascript jquery json arrays slice


    【解决方案1】:

    您发布的代码运行良好!

    这是一个演示:http://jsfiddle.net/enXcn/1/

    请注意,当您更改 slice 的值时,会显示更多或更少的元素,这就是您所描述的应该做的事情。

    HTML: <div id="recentActivities"></div>
    

    JS:

    var recentActdata = [   
    { 
        "displayValue":"Updated Guidelines", 
        "link":"#",
        "timestamp":"29/06/2013 01:32"
    },
    { 
        "displayValue":"Logging", 
        "link":"#",
        "timestamp":"28/06/2013 16:19"
    },
    { 
        "displayValue":"Subscribe", 
        "link":"#",
        "timestamp":"21/06/2013 14:30"
    },
    { 
        "displayValue":"Artifactory Vs Nexus", 
        "link":"#",
        "timestamp":"21/06/2013 13:39"
    },
    { 
        "displayValue":"CTT - Java 7", 
        "link":"#",
        "timestamp":"20/06/2013 13:30"
    },
    { 
        "displayValue":"Added Artifactory Server", 
        "link":"#",
        "timestamp":"19/06/2013 23:39"
    },
    { 
        "displayValue":"Estimation Template", 
        "link":"#",
        "timestamp":"19/06/2013 23:39"
    },
    { 
        "displayValue":"GZIP compression in Tomcat", 
        "link":"#",
        "timestamp":"14/06/2013 23:39"
    },
    { 
        "displayValue":"HBase Basics", 
        "link":"#",
        "timestamp":"12/06/2013 23:39"
    }
     ];
    
    
    $.each(recentActdata.slice(0,5), function(i, data) {
                var ul_data = "<li><h3>"+ data.displayValue+ "</h3></li>";
                $("#recentActivities").append(ul_data);
            });
    

    【讨论】:

    • 嗯,基本上,我正在进行 ajax 调用,文件的格式与我上面给出的相同,但问题是我无法向我的 JSON 数组添加名称。这个$each在ajax的success函数里面success: function(recentActdata) { $.each(recentActdata.slice(0,5), function(i, data) { var ul_data = "&lt;li&gt;&lt;h3&gt;"+ renderActionLink(data)+ "&lt;/h3&gt;&lt;/li&gt;"; $("#recentActivities").append(ul_data); }); },
    • 对不起。是的。代码工作正常,这只是我无法弄清楚的其他一些错误。感谢您的回复。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-07
    • 2013-09-24
    • 2021-08-07
    • 2019-04-26
    • 1970-01-01
    相关资源
    最近更新 更多