DDR爱好者之家 Design By 杰米

本文实例分析了ajax请求之返回数据的顺序问题。分享给大家供大家参考,具体如下:

ajax请求一个url,php后端处理后,数组为如下格式:
复制代码 代码如下:$a = array( '-1'=> 10 ,'-3' => 2, '0' => '5' ,'-2' => 4);

然后使用php的asort函数对数组按照value进行升序排序后,如下:
复制代码 代码如下:$a = array('-3' => 2, '-2' => 4,'0' => '5', '-1'=> 10  );

前端ajax接收的返回值,仍然是无序的。

可能导致的原因为:因为键值是字符换,js对数据进行了重新排序处理

处理方案如下:

$i = 0;
foreach ($data as $k => $v) {
   $tmp[$i]['data'] = $v;
   $tmp[$i]['key'] = $k;
   $i++;
}

此时数据如下:

{
  "rows": [
    {
      "data": "2",
      "key": 0-3
    },
    {
      "data": "4",
      "key": -12
    },
    {
      "data": "5",
      "key": 0
    },
    {
      "data": "10",
      "key": -1
    }
  ]
}

ajax接收处理,数据正确。

希望本文所述对大家ajax程序设计有所帮助。

DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米