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)
ajax向前台输出二维数组 并解析的更多相关文章
- 功能要求:定义一个两行三列的二维数组 names 并赋值,使用二重循环输出二维数组中的元素。
功能要求:定义一个两行三列的二维数组 names 并赋值,使用二重循环输出二维数组中的元素 names={{"tom","jack","mike&qu ...
- Java实验——输出二维数组连续二维子数组的最大和
该算法思路,根据我博客里面一维子数组求和的思路,可以用一个新的二维数组对该二维区域的数组进行求和,例如新的二维数组的第5个位置,就代表从1到5斜对角线的块状区域的和,即1,2,4,5这4个数的和,x个 ...
- C语言:通过指针函数输出二维数组中每个学生的成绩
// // main.c // Pointer_function // // Created by ma c on 15/8/2. // Copyright (c) 2015年 bjsxt. ...
- PHP循环输出二维数组的数据
//下面是一个例子$g_id = isset($_GET['id'])?$_GET['id']:'1';//定义变量$g_id,使用三元运算符是为了避免出现waring $p_id = ($g_id& ...
- python输出二维数组中,每行N个最大值的索引
`import heapq import numpy as np import random a = np.random.randint(50,size= (4,5)) a = np.array(a) ...
- js 输出二维数组的最大值
function num(arr){ max=a[0][0]; for (var i = 0; i < a.length; i++) { for (var j = 0; j< a[i].l ...
- js输出二维数组最长的子数组
,,],[,,,],[,,,,]]; ].length; ; i < a.length; i++) { if (max<a[i].length) { max=a[i].length; va ...
- php中遍历二维数组并以表格的形式输出
一.索引数组 <?php //使用array()语句结构将联系人列表中所有数据声明为一个二维数组,默认下标是顺序数字索引 $contact1 = array( //定义外层数组 array(1, ...
- java例题_29 二维数组问题,并输出对角线之和
1 /*29 [程序 29 求矩阵对角线之和] 2 题目:求一个 3*3 矩阵对角线元素之和 3 程序分析:利用双重 for 循环控制输入二维数组,再将 a[i][i]累加后输出. 4 */ 5 6 ...
随机推荐
- 《Code Complete》ch.7 高质量的子程序
WHAT? 子程序(routines)是为实现一个特定目的而编写的可被调用的方法或过程.在C++中是函数(function),在Java中是方法(method),在VB中是函数过程(function ...
- 下拉列表autocomplete各种实现方式比较
方法一:用form 表单的datalist属性,此时会以首字母补充排序.实现效果参考:http://www.w3schools.com/html/tryit.asp?filename=tryhtml_ ...
- 浅析JNI函数的注册过程
我们在java中调用Native code的时候,一般是通过JNI来实现的,我们只需要在java类中加载本地.so库文件,并声明native方法,然后在需要调用的地方调用即可,至于java中nativ ...
- 模糊查询(LIKE)and (PATINDEX() . CHARINDEX())
SQL中的模糊查询一般来说使用模糊查询,大家都会想到LIKE select * from table where a like '%字符%' 如果一个SQL语句中用多个 like模糊查询,并且记录条 ...
- 求编译器中数的最值(c++)
#include <limits> //头文件 #include <iostream> using namespace std; int main() { cout <& ...
- php array(object) 与xml相互转换
private function _array_to_xml($source, $charset='utf-8'){ $array = json_decode($source); $pre = '&l ...
- STM32F05 学习中............
今天,拿到stm32f05的板子已经三个月了吧,但是没有真的研究过,真的对板子过意不去了...所以决定今天好好的对待我的板子.
- Leetcode028. Implement strStr()
class Solution { public: int strStr(string haystack, string needle) { ; //needle empty ; //haystack ...
- WWF3事件类型活动<第三篇>
WWF将工作流分为两大类: 面向Human:在工作流运行时通过用户对外部应用程序的操作来影响工作流的业务流转. 面向System:应用程序控制流程. 工作流与应用程序都是可以单独存在的,因此它们之间的 ...
- NSString常见用法总结
//====================NSStirng 的常见用法==================== -(void)testString { //创建格式化字符串:占位符(由一个%加一个字 ...