如何在数据表的一列中显示json数组?

时间:2019-01-07 19:08:42

标签: jquery arrays laravel-5 datatable

下面是我要在数据表中显示的数据。如您所见,permitbrands是一个json数组,我想在一栏中显示它。如果它是json对象,那会更容易一些,但这是json数组。

 {
 id: 1,
 total_cases: 13,
 permitbrands: [
       {
         id: 1,
         br_name: "Apple",
         br_no: "12",
         permit_id: 1,
       },
       {
         id: 2,
         br_name: "Mango",
         br_no: "36", 
         permit_id: 1,
        }
  ],
}

下面是我的数据表列代码:

$(document).ready( function () {
    table = $('.table').DataTable({
        processing: true,
        serverSide: true,
        paging:true,
        ajax : '/permits/search',
        columns: [
               { data: 'total_cases', name: 'total_cases'},
               {
                data: 'permitbrands[,].br_name',
               },
        ],
    });

});

但是显示的结果是Apple,Mango。

我想在列中将值显示为Apple 12,Mango 36。

这怎么办?谁能给我建议解决方案。

我尝试将其循环,但是循环了两次。

   {
    data: 'permitbrands[]',
          render: function ( data , row ) {
                  var output='';
                   $.each(data, function(index,item) {
                    alert(index);
                    output+= data[index].br_no+' '+data[index].br_name;
                  });
                 return output;
               }
    },

我得到的结果是这样的:

12 12 Apple , 36 36 Mango.

我不知道为什么会这样。但是循环显示我发出了4次警戒,而不是2次。

1 个答案:

答案 0 :(得分:1)

也许您应该尝试检查函数中循环的JSON数据。 没有其他原因导致您的代码无法正常工作。 请仔细检查您的数据,也许“ 12 Apple”或“ 36 Mango”可能来自表格的一个字段。

相关问题