ajax向前台输出二维数组 并解析


最近在弄一个售后数据统计的功能,里边需要统计特定时期内各种客户、机型的分布比例,单单table来计算并显示很死板(一点也不酷)

于是决定用jquery插件flot并通过ajax传输数据 :flot的折线图、柱状图和堆栈图需要提供二维数组格式的数据(坐标格式,如[[1,1],[2,2],[3,3]]

但是发现不管怎么拼字符串,或者用json输出都不能正确提供数据(alert出来看起来是坐标格式

苦思冥想都不得其解,头脑发胀,索性回去跑两圈, 流的汗那个多 you know ,it's hot summer day

问题还得解决呐,头脑清晰多了(#‵′)凸 继续一步步分析白天出错的地方,

一直纠结数据格式中, 就想会不会是在js那边收到的东西看起来是二维坐标数组但是其实不是那样子!!!

果然,谷了个狗 发现确实不能直接输出二维数组给前台,需要js重组才可以。

first: js中[[1,1],[2,2],[3,3]] 和{{1,1},{2,2},{3,3}}都是二维数组 具体为嘛 我也不知道

对比了好些人的回答,整理两个方法如下

方法一:

(推荐)

(1) 后台拼接字符串(完型的二维数组格式 如:[[1,1],[2,2],[3,3]]) ,

(2)再在调用页面通过js的 eval()方法解析即可。

╮(╯▽╰)╭找了半天,对比好多人的回答才试验成功。

这种最方便了,json或者其他输出逗号分开的字符串 再在js里重组好麻烦。(js不怎么会哎 (#‵′)凸 myself)

不过这种输出格式比较死,不能复用

方法二:  

(1)直接在后台把这个数据拼成一个string 比如id|name1|id2|name2..........

(2)然后把这个字符串 随便给个什么标签的 一个不用显示的属性

(3)再在前台 用js的 split 分成数组就行了

(4)如果ajax的话 基本上一样 只是后台的string不是给标签啊什么的隐藏控件而是输出给要调用的页面

(本人懒得要死, 这种要先 ajax 或 后台拼串,再js split() 又要重组数组 oh my brain cells)

优质内容筛选与推荐>>
1、2019 SDN上机第5次作业
2、88.Merge Sorted Array
3、【区块链】Paxos算法
4、YUM本地源制作与yum网络版仓库
5、PAT1086:Tree Traversals Again


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号