HighChart里的series数据封装,及如何从后台传递探讨

 

项目中想突出几个亮点,Highchart图标应该算一个,外行人一看那么炫,档次就上去了;但官网demo都是静态数据,如何展示的是自己后台数据呢,很明显series里的数据是json结构,刚开始两个思路

1、页面加载的时候,通过后台requse.setAttribute();前端<script>里直接${}取值;

2、直接用$ajax同步请求,得到json数据赋值给series;

第一种方式折腾了好久最后放弃了,requse.setAttribute()里放对象数组后,自己循环拼接不出来;只能用${}一个一个取出来;

第二种代码如下

后台代码
模仿series数据结构自己定义的类
public class Hchart {
	String name;
	double[]data;}

//给chart封装数据后传给前端
			double[]data1= {42,48,52,38,52,48,43};
			double[]data2= {50.5,53.7,56.8,40.9,58.8,60.3,62.2};
			double[]data3= {5.3,5.3,5.6,4.0,5.8,6.0,6.2};
			double[]data4= {5,0,0,0,30,0,50};		
			Hchart hchar1=new Hchart("作业次数",data1);
			Hchart hchar2=new Hchart("生活垃圾",data2);
			Hchart hchar3=new Hchart("生活污水",data3);
			Hchart hchar4=new Hchart("燃油供应",data4);
			Hchart[]h= {hchar1,hchar2,hchar3,hchar4};
			resp.setContentType("application/json;charset=utf-8");						
			PrintWriter out = resp.getWriter();													
			String json = JSON.toJSONString(h);			
			out.println(json);							
			out.close();	

前端js代码
                <script>
var              series = [];									
					$.ajax({
						type: "GET",
						url: "${ pageContext.request.contextPath }/StatisticsServlet? method=getChart",
                        
						async:false, //关键点
						dataType:"json",
						success: function(data) {                            
                              series=data;                           
						}
					})
                      。
                      。
                      。

	         series: series,//赋值
                      。
                      。
                      。




水平很菜,希望哪位大佬不吝赐教

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值