HandsOnTable:如何从PHP服务器脚本加载数组


HandsOnTable: How to load an array from a PHP server script?

我在使用 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...]
}

返回的数组是一个对象。我已经查找了几篇关于如何在客户端将其转换为数组的文章,但所有方法都会导致 Object var。据我了解,HandsOnTable 在数据期间需要一个数组:负载构造。

寻找具有从PHP服务器脚本加载数据然后将其分配到HandsOnTable组件中的经验的人。

提前谢谢你!

找到了我的问题。它不是返回类型。我的数据架构与生成的数组不匹配。

修改了我的 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'}
      ],