laravel从JSON响应获取对象数据给出undefined

时间:2016-01-05 14:37:42

标签: php ajax laravel-5

我使用ajax通过控制器从模型中获取数据每件事情都运行良好我认为当我用console.log(响应)检查时我得到了

readlines()

并且在我发现的对象的一侧到目前为止所有数据都是好的

AJAX

readlines()

在我的控制器

Object {buyTemps: Object}

consol.log(v)

     $(".buy-tr").click(function(e){ 
    var 
      data = {}, 
      $row = $(this).closest("tr"),            // Finds the closest row <tr> 
      $tds = $row.find("td:nth-child(1)");     // Finds the 2nd <td> element
    $.each($tds, function() {                  // Visits every single <td> element
        data={buyId:$(this).text()};                     
    }); 
  //  $(this).find('input:radio').prop('checked', true); 

    $(".buy-tr").click(function(e){ 
    var 
      data = {}, 
      $row = $(this).closest("tr"),         // Finds the closest row <tr> 
      $tds = $row.find("td:nth-child(1)");  // Finds the 2nd <td> element
    $.each($tds, function() {               // Visits every single <td> element
        data={buyId:$(this).text()};                     
    });  
    $.ajax({
        url : "/buy/selectTable",
        type : 'GET',
        dataType : 'json',
        data : data,
    success : function(response) { 
            console.log(response);

       $('#buyItem-table tbody').empty();
        $.each(response,function(index, v){
           $('#buyItem-table tbody').append(                                          

                  "<tr><td>"         +  v.buyItemTempId   
                      + "</td><td>"  +  v.itemName    
                      + "</td><td>"  +  v.itemExpire    
                      + "</td><td>"  +  v.buyPrice                          
                      + "</td><td>"  +  v.buyBox   
                      + "</td><td>"  +  v.itemPacking                           
                      + "</td><td>"  +  v.buyQty       
                 + "</td></tr>" );          

           });


    },
    error : function(response) {
      swal("error"); 
    }

结果所有表格单元格填充未定义

1 个答案:

答案 0 :(得分:0)

您的问题是您在错误的位置循环响应数据。当您致电$.each时,您实际上正在遍历所有分页元数据(总计,per_page等)。您想要的实际数据包含在数据数组中。所以只需循环遍历该数组,它应该可以工作。

$.each(response.data,function(index, v){
    //now v.buyItemTempId and other properties exist
}