У меня возникают проблемы при загрузке массива с использованием сценария 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 требует массив во время данных: конструкция загрузки.
Ищете тех, у кого есть опыт загрузки данных из сценария PHP-сервера и последующего назначения их в компонент HandsOnTable.
Заранее спасибо!
Нашел мою проблему. Это не был тип возврата. У меня 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'}
],
Других решений пока нет …