Php jQuery$。每个循环和json数据

Php jQuery$。每个循环和json数据,php,jquery,ajax,json,each,Php,Jquery,Ajax,Json,Each,我似乎无法让它正常工作,我正在检索一些json数据,只是试图循环使用它并将其附加到DIV中。下面是我的代码: 如何返回JSON(PHP) 使用JQUERY调用我的JSON $.getJSON("article.php",function(data) $.each(data.list, function(i,data) { var listData = "<li>" + data.subscribe + "</li>"; $('#lists')

我似乎无法让它正常工作,我正在检索一些json数据,只是试图循环使用它并将其附加到DIV中。下面是我的代码:

如何返回JSON(PHP)

使用JQUERY调用我的JSON

$.getJSON("article.php",function(data)
   $.each(data.list, function(i,data) {
      var listData = "<li>" + data.subscribe + "</li>";
      $('#lists').append(listData);
   });
});
$.getJSON(“article.php”,函数(数据)
$.each(data.list,function(i,data){
var listData=“
  • ”+data.subscribe+”
  • ”; $('#lists')。追加(listData); }); });

    我没有在控制台中检索任何错误,但是没有发生任何事情,我知道调用成功,我是否正确地执行了。每个循环?有人能帮忙吗?

    我个人没有使用
    $。每个
    都可以循环一个数组,因为我总是对
    循环执行
    ,所以您可以尝试以下操作:

    $.getJSON("article.php", function (d) {
        var listsDiv = $("#lists");
    
        for (var i = 0; i < d.list.length; i++) {
            listsDiv.append("<li>" + d.list[i].subscribe + "</li>");
        };
    });
    
    $.each(data.list, function(i, item) {
        var listData = "<li>" + item.subscribe + "</li>";
        $('#lists').append(listData);
    });
    
    $.getJSON(“article.php”,函数(d){
    var listsDiv=$(“#列表”);
    对于(变量i=0;i”+d.list[i].订阅+””;
    };
    });
    
    我有99%的信心它能满足你的需要。另外,最好在循环外部为div添加一个变量,并在循环中追加,因为现在代码正在为JSON列表中的每个对象遍历该div的DOM

    另外,我不确定您是否正在截断JSON响应,但您可能希望附加一个“success”属性并进行检查。因此,您的代码将升级为:

    $.getJSON("article.php", function (d) {
        if (d.success) {
            var listsDiv = $("#lists");
    
            for (var i = 0; i < d.list.length; i++) {
                listsDiv.append("<li>" + d.list[i].subscribe + "</li>");
            };
        } else {
            // Do something else to notify the user that the data could not be retrieved.
        };
    });
    
    $.getJSON(“article.php”,函数(d){
    如果(d.成功){
    var listsDiv=$(“#列表”);
    对于(变量i=0;i”+d.list[i].订阅+””;
    };
    }否则{
    //执行其他操作以通知用户无法检索数据。
    };
    });
    
    我个人没有使用
    $。每个
    循环一个数组,因为我总是对
    循环执行
    ,所以您可以尝试以下方法:

    $.getJSON("article.php", function (d) {
        var listsDiv = $("#lists");
    
        for (var i = 0; i < d.list.length; i++) {
            listsDiv.append("<li>" + d.list[i].subscribe + "</li>");
        };
    });
    
    $.each(data.list, function(i, item) {
        var listData = "<li>" + item.subscribe + "</li>";
        $('#lists').append(listData);
    });
    
    $.getJSON(“article.php”,函数(d){
    var listsDiv=$(“#列表”);
    对于(变量i=0;i”+d.list[i].订阅+””;
    };
    });
    
    我有99%的信心它能满足你的需要。另外,最好在循环外部为div添加一个变量,并在循环中追加,因为现在代码正在为JSON列表中的每个对象遍历该div的DOM

    另外,我不确定您是否正在截断JSON响应,但您可能希望附加一个“success”属性并进行检查。因此,您的代码将升级为:

    $.getJSON("article.php", function (d) {
        if (d.success) {
            var listsDiv = $("#lists");
    
            for (var i = 0; i < d.list.length; i++) {
                listsDiv.append("<li>" + d.list[i].subscribe + "</li>");
            };
        } else {
            // Do something else to notify the user that the data could not be retrieved.
        };
    });
    
    $.getJSON(“article.php”,函数(d){
    如果(d.成功){
    var listsDiv=$(“#列表”);
    对于(变量i=0;i”+d.list[i].订阅+””;
    };
    }否则{
    //执行其他操作以通知用户无法检索数据。
    };
    });
    
    您似乎有语法错误。A{在第一行之后缺失,即第一行中“函数(数据)”的起始{出现语法错误。A{在第一行之后缺失,即第一行中“函数(数据)”的起始{可能您可以尝试以下操作:

    $.getJSON("article.php", function (d) {
        var listsDiv = $("#lists");
    
        for (var i = 0; i < d.list.length; i++) {
            listsDiv.append("<li>" + d.list[i].subscribe + "</li>");
        };
    });
    
    $.each(data.list, function(i, item) {
        var listData = "<li>" + item.subscribe + "</li>";
        $('#lists').append(listData);
    });
    
    $每个(数据列表、函数(i、项){
    var listData=“
  • ”+item.subscribe+”
  • ”; $('#lists')。追加(listData); });
    只需将
    功能(i,数据)
    更改为
    功能(i,项目)


    通过以您自己的方式重用变量名
    数据
    ,您实际上并没有像预期的那样在数组中循环。

    也许您可以尝试以下方法:

    $.getJSON("article.php", function (d) {
        var listsDiv = $("#lists");
    
        for (var i = 0; i < d.list.length; i++) {
            listsDiv.append("<li>" + d.list[i].subscribe + "</li>");
        };
    });
    
    $.each(data.list, function(i, item) {
        var listData = "<li>" + item.subscribe + "</li>";
        $('#lists').append(listData);
    });
    
    $每个(数据列表、函数(i、项){
    var listData=“
  • ”+item.subscribe+”
  • ”; $('#lists')。追加(listData); });
    只需将
    功能(i,数据)
    更改为
    功能(i,项目)


    通过以您自己的方式重用变量名
    数据
    ,您实际上并没有像预期的那样在数组中循环。

    您是否尝试过在迭代循环之前粘贴
    控制台.log
    以查看返回的
    数据?您是否尝试过在迭代循环之前粘贴
    控制台.log
    以查看what
    data
    返回了吗?+1或者它是一个坏的复制/粘贴,但它总是丢失。很好的发现,我看起来通过了它,哈哈…+1或者它是一个坏的复制/粘贴,但它总是丢失。很好的发现,我看起来通过了它,哈哈。。。