2017-01-30 1 views
0

Я получаю ответ от json-объекта с сервера, но не способен отображать данные в столбцы. Цените свою помощь.Заполнение данных в столбцы данных

JSON OBJECT RESPONSE: 
{ 
"CHD2": { 
"POSName": "CHANDIGARH INDU. AREA-I", 
"HODB": "QSR_PHASE-I_CHANDIGARH" 
}, 
"D002": { 
"POSName": "DEHRADUN-ASTLEY HALL", 
"HODB": "QSR_DEHRADUN_ASTLEY" 
}, 
"J002": { 
"POSName": "VAISHALI NAGAR", 
"HODB": "QSR_VAISHALI_NAGAR" 
} 
} 

Jquery SCRIPT

<script> 
    $(document).ready(function() { 
    console.log('Initializing tables...'); 
    var <a href="//legacy.datatables.net/ref#aaData">aaData</a> = []; 
     $('#dataTables-example').DataTable({ 
      responsive: true, 
      processing: true, 
      serverSide: true, 
      data : aaData, 
      ajax: { 
       url:'http://localhost:81/reporting/outletList.php', 
       type:'POST', 
       dataType:'json', 
       dataSrc : "", 
       error: function(errorThrown){ 
        alert(errorThrown); 
        alert("There is an error with AJAX!"); 
       }, 
      "success": function(data) { 
           console.log(data); 
       aaData.push([ 
         data['CHD2'].POSName, 
         data['CHD2'].HODB 
        ]); 
       aaData.push([ 
        data['D002'].POSName, 
        data['D002'].HODB 
       ]); 
       data = aaData; 
       console.log(data); 
      }}, 
      /*columns: [ 
       { data: "POSName"}, 
       { data: "HODB"} 
      ],*/ 
      "language": { 
      "zeroRecords": "No records to display" 
      } 
      }) 
     }); 
    </script> 



<div class="panel-body"> 
    <table width="100%" class="table table-striped table-bordered table-hover" id="dataTables-example"> 
    <thead> 
    <tr> 
    <th>POSName</th> 
    <th>HODB</th> 
    </tr> 
    </thead> 

Тем не менее, это не работает. Ответ JSON-объекта присутствует в инструменте разработчика Chrome, но данные не заполняются в таблице.

+0

вы сделаете свой код очень сложным, вы можете легко справиться с этим ... пожалуйста, напишите свой html также или ваше имя класса DIV или SPAN, где вы хотите обновить свой ответ json –

+0

Непонятно, где вы хотите отображать (отображать) ваши данные. Вы можете создать новую разметку таблицы html с помощью javascript (используя извлеченные данные) и добавить где-нибудь на странице. – misher

+0

Привет, Я добавил код HTML для рендеринга данных. Datatable id - # dataTables-example – user3711100

ответ

0

Что-то, как это должно работать:

let data = { 
    "CHD2": { 
     "POSName": "CHANDIGARH INDU. AREA-I", 
     "HODB": "QSR_PHASE-I_CHANDIGARH" 
    }, 
    "D002": { 
     "POSName": "DEHRADUN-ASTLEY HALL", 
     "HODB": "QSR_DEHRADUN_ASTLEY" 
    }, 
    "J002": { 
     "POSName": "VAISHALI NAGAR", 
     "HODB": "QSR_VAISHALI_NAGAR" 
    } 
    }, 
    dataArray = []; 

for (let item in data) { 
    let row = { 
    "Name": item 
    }; 
    for (let element in data[item]) { 
    console.log(data[item][element]); 
    row[element] = data[item][element]; 
    } 
    dataArray.push(row); 
} 
console.log(dataArray); 

После того, как это сделано rows должны представлять свои данные. Рабочий JSFiddle here.

+0

Привет, Спасибо за ваше возвращение. Я получаю dataArray с 3 полями, но таблица не заполняется. Его показ «обработка». Не могли бы вы проверить мой html-код на наличие каких-либо проблем. – user3711100