Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何循环所有json数据并插入HTML?_Php_Jquery_Json - Fatal编程技术网

Php 如何循环所有json数据并插入HTML?

Php 如何循环所有json数据并插入HTML?,php,jquery,json,Php,Jquery,Json,我想将Json数据插入我的file.php中。所以每组都被插入到一组div中。(风格相同等) 我有一种感觉,我使用的方式是不明智的。。。我们非常欢迎更好的解决方案。谢谢各位 $.ajax({ url: feedURL, jsonpCallback: 'jsonpCallback', contentType:"application/json", dataType: 'jsonp', success: function(json) {

我想将Json数据插入我的file.php中。所以每组都被插入到一组div中。(风格相同等)

我有一种感觉,我使用的方式是不明智的。。。我们非常欢迎更好的解决方案。谢谢各位

    $.ajax({

    url: feedURL,
    jsonpCallback: 'jsonpCallback',
    contentType:"application/json",
    dataType: 'jsonp',
    success: function(json) {

        for (var i=0; i < 15; i++) {

        var date = new Date(json.posts.data[i].created_time);
        var months = ["/01/", "/02/", "/03/", "/04/", "/05/", "/06/", "/07/",
     "/08/", "/09/", "/10/", "/11/", "/12/"];



        $("#description").html(json.posts.data[i].message);
        $("#caption").html(json.posts.data[i].caption); 
        $("#expire_date").html(date.getDate() + months[date.getMonth()] + date.getFullYear()); 
        $("#fb_link").html(
            '<a href="' + json.posts.data[i].link + '">'
            + 'Total Like: ' + json.posts.data[i].likes.summary.total_count
            + ' Total Share: ' + json.posts.data[i].shares.count
            + ' View on Facebook' + '</a>'
        ); 
        $("#profile_img").html('<img src="' + json.picture.data.url + '">');
        $("#profile_name").html(json.name);
        $("#full_fb_photo").html('<img src="' + json.posts.data[i].full_picture + '">');


        }

    },
    error: function(e) {
        console.log(e.message);
    }
});
$.ajax({
url:feedURL,
jsonpCallback:'jsonpCallback',
contentType:“应用程序/json”,
数据类型:“jsonp”,
成功:函数(json){
对于(变量i=0;i<15;i++){
var date=新日期(json.posts.data[i].created\u time);
变量月数=[“/01/”、“/02/”、“/03/”、“/04/”、“/05/”、“/06/”、“/07/”,
"/08/", "/09/", "/10/", "/11/", "/12/"];
$(“#description”).html(json.posts.data[i].message);
$(“#caption”).html(json.posts.data[i].caption);
$(“#expire_date”).html(date.getDate()+months[date.getMonth()]+date.getFullYear());
$(“#fb_link”).html(
''
); 
$(“#profile_img”).html(“”);
$(“#profile_name”).html(json.name);
$(“#完整照片”).html(“”);
}
},
错误:函数(e){
控制台日志(e.message);
}
});

您可以流畅地编写代码。循环中打印不可计数的日期。如果我知道你的数据格式,我会给你确切的方法

试试这个代码

for (var prop in json.posts.data) {
      $("#description").html(json.posts.data[prop].message);
     // other same as
}

谢谢大家,我是这样想的

$.ajax({

    url: feedURL,
    jsonpCallback: 'jsonpCallback',
    contentType:"application/json",
    dataType: 'jsonp',
    success: function(json) {
 var social_list = "";
        for (i=0; i < 15; i++) {

        var date = new Date(json.posts.data[i].created_time);
        var months = ["/01/", "/02/", "/03/", "/04/", "/05/", "/06/", "/07/",
     "/08/", "/09/", "/10/", "/11/", "/12/"];

        social_list += "<div class='social_item'><div class='item'><div class='heading'>";
        social_list += "<img src='" + json.picture.data.url + "'/><span>" + json.name + "</span><i class='fa fa-facebook'></i></div>";
        social_list += "<div class='content'><p>Created on" + date.getDate() + months[date.getMonth()] + date.getFullYear() + "</p>";
        social_list += "<div><img src='" + json.posts.data[i].full_picture +  "' /></div>";
        social_list += "<p name=" + i + ">" + json.posts.data[i].message + "</p>";
        social_list += "<div><a href='" + json.posts.data[i].link + "'> Total Likes: " + json.posts.data[i].likes.summary.total_count + "Total Share: " + json.posts.data[i].shares.count + " View on Facebook </a></div>";
        social_list += "</div></div></div>"

}
        $('#social_list').html(social_list);
$.ajax({
url:feedURL,
jsonpCallback:'jsonpCallback',
contentType:“应用程序/json”,
数据类型:“jsonp”,
成功:函数(json){
var social_list=“”;
对于(i=0;i<15;i++){
var date=新日期(json.posts.data[i].created\u time);
变量月数=[“/01/”、“/02/”、“/03/”、“/04/”、“/05/”、“/06/”、“/07/”,
"/08/", "/09/", "/10/", "/11/", "/12/"];
社交列表+=”;
社交列表+=“”+json.name+“”;
社交列表+=“创建于”+date.getDate()+months[date.getMonth()]+date.getFullYear()+“

”; 社交列表+=”; 社交列表+=“

”+json.posts.data[i].message+”

”; 社交列表+=”; 社交活动列表+=“” } $('social_list').html(social_list);
jsoninside success函数的输出是什么?使用相同的DOM元素,如#description,将覆盖prev值。因此,即使您得到许多记录,也只会显示最后一条记录。hi@SameerK感谢您的快速响应。您完全正确,结果只显示最后一条。json的输出是许多数据的键从0到14,每个数据都有时间、url等内容。向您显示json响应。要显示所有记录,您需要在循环中构建一部分html,然后使用容器ID将其附加到主html中的某个容器中。很高兴您找到了它。只想知道每次是否正好有14条记录?H我@SameerK在未来,我希望它能显示更多,并且在一定程度上,它加载更多。但是,目前我对它们没有什么问题。1.(这是一个facebook API,我不确定如何有更多的帖子,默认值是15。2.不确定如何加载更多,猜测再次使用ajax。