ajax成功打印多个数据

时间:2014-01-30 05:16:30

标签: ajax

我是这个ajax的新手。我有一个问题,在我的ajax编码我得到循环中的多个数据,所以如何在ajax成功打印多个数据 这是我的代码:

$.ajax({
    url: 'ajaxdate',
    data: {ending:ending},
    type: 'POST',
    success: function(data) {

    $('#info1').text(data);
    console.log(data.length);
    alert(data);

       /*for(var item in data){
      console.info(item);//print key
          console.info(data[item]);//print value
    }*/
    }
});

function ajaxdate()

{        $数据=阵列();

   foreach ($guestbookdetail as $guestbookdetail)
   {
    echo $data['full_name'] = $detail['list']['full_name']."\n";
    }           
}

如何在ajax成功中打印多个数据

2 个答案:

答案 0 :(得分:0)

你可以做的是期待JSON作为回应。 如果你在循环中打印full_name并期待HTML响应,我在你的函数中看到了问题,它只是一个字符串。

你能做的就是这样的事情

 function ajaxdate()
 { 
     $data=array();

     foreach ($guestbookdetail as $guestbookdetail)
     {
          $data[]['full_name'] = $detail['list']['full_name'];
     } 
     die(json_encode($data));          
 }

这将返回一个带有full_name对象集合的json数组,例如[{full_name:'ABC'},{full_name:'cde'}]

然后在你的ajax中添加dataType:'json'。

现在你可以彻底迭代你在ajax成功中获得的响应。

答案 1 :(得分:0)

举个例子,你有这个<ul id="showResultHere"></ul>标签,你想要显示结果,然后在你的“成功”AJAX中尝试这个:

success: function (data){
     $.each(data, function(index) {
          //alert(data[index]);
          $("#showResultHere").append("<li>" + data[index] + "</li>");
     });
}

或者,另一种方法是在您的留言簿阵列中显示“full_name”,这是另一种选择:

success: function (data){
     data.forEach(function(data) {
          $("#showResultHere").append("<li>" + data + "</li>");
     });
}