HandsOnTable: Как загрузить массив из скрипта PHP-сервера?

У меня возникают проблемы при загрузке массива с использованием PHP-скрипта через слой Ajax, а затем вставки полученного массива в плагин компонента HandsOnTable. Я "думаю", что моя проблема в том, что независимо от того, что я пытаюсь сделать, результирующий массив превращается в объект (протестировав его с проверкой typeof()).

Вот мой PHP:

$listArray[] = array('First Name', 'Last Name', 'Email','Status');

Вот мой возвращающийся JSON:

{"returnText":"OK","returnCode":"200","listArray":[["First Name","Last Name","Email","Status"]]}

Вот мой Javascript post-jQuery.parseJSON():

bulkListData = returnText['listArray'];

$("#table").handsontable({
      data: bulkListData,
      [...other values below...]
}

Возвращаемый массив - это объект. Я просмотрел несколько сообщений о том, как преобразовать это в массив на стороне клиента, но все методы приводят к объектной переменной var. Насколько я понимаю, HandsOnTable требует массив во время data: load load.

Ищете тех, у кого есть опыт загрузки данных из сценария PHP-сервера и последующего назначения их в компонент HandsOnTable.

Заранее спасибо!

1 ответ

Нашел мою проблему. Это не был тип возврата. Моя dataSchema не соответствует результирующему массиву.

Модифицировал мой PHP:

$listArray[] = array('name'=>array('first'=>$candidate['name_first'],'last'=>$candidate['name_last']),'email'=>$candidate['email'],'status'=>"");

Модифицировано мое объявление Javascript HandsOnTable:

dataSchema: {name: {first: null, last: null}, email: null,status: null},
      colHeaders: ['First Name', 'Last Name', 'Email','Status'],
      columns: [
        {data: 'name.first'},
        {data: 'name.last'},
        {data: 'email'},
        {data: 'status'}
      ],
Другие вопросы по тегам