在上一篇博客中,学习了使用javascript和jquery两种方法来进行前后台交互。本篇博客着重利用jquery+echarts来实现从后台取数,从前端echarts中展示。

1.html页面编写:

a.echarts.js导入,jquery框架导入。

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>  <script src="Scripts/echart/echarts.js"></script><script src="Scripts/jquery-3.3.1.min.js"></script><script src="Scripts/echart/macarons.js"></script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/><title>echart demo to ajax+json</title>
</head>

b.echarts+ajax脚本编写:

<body><div id="main" style="width: 600px;height:400px;"></div><script type="text/javascript">var mychart = echarts.init(document.getElementById('main'), 'macarons');mychart.setOption({title: {text: '异步加载数据示例'},tooltip: {},legend: {data: ['销量']},xAxis: {data: []},yAxis: {},series: [{name: '销量',type: 'bar',data: []}]});mychart.showLoading();var names =[];    //类别数组(实际用来盛放X轴坐标值)var nums = [];    //销量数组(实际用来盛放Y坐标值)$.ajax({type: "post",async: true,            //异步请求(同步请求将会锁住浏览器,用户其他操作必须等待请求完成才可以执行)  url: "index.aspx?method=getdata",//url:"Handler.ashx?method=getdata",data: {},dataType: "json",        //返回数据形式为jsonsuccess: function (result) {//请求成功时执行该函数内容,result即为服务器返回的json对象if (result) {//var json = $.parseJSON(result);alert(result);for (var i = 0; i < result.length; i++) {//alert(result[i].name);names.push(result[i].names);    //挨个取出类别并填入类别数组}for (var i = 0; i < result.length; i++) {nums.push(result[i].nums);    //挨个取出销量并填入销量数组}mychart.hideLoading();    //隐藏加载动画mychart.setOption({        //加载数据图表xAxis: {data: names},series: [{// 根据名字对应到相应的系列name: '销量',data: nums}]});}},error: function (errorMsg) {//请求失败时执行该函数alert("图表请求数据失败!");myChart.hideLoading();}})</script>

2.后台脚本编写(有两种方法:一种使用aspx后台脚本,一种使用一般处理程序ashx)

2.1利用aspx后台脚本:(使用Newtonsoft.dll的jsonconvert方法转换为json字符串)

public partial class index : System.Web.UI.Page
{List<object> lists = new List<object>();string result = "";protected void Page_Load(object sender, EventArgs e){string method = Request.QueryString["method"];if (!string.IsNullOrEmpty(method)){if (method == "getdata"){data();}}}private void data(){lists = new List<object>();var obj = new { names = "yuan", nums = 12 };var obj1 = new { names = "yuan1", nums = 19 };lists.Add(obj);lists.Add(obj1);object JSONObj = (Object)JsonConvert.SerializeObject(lists);Response.Write(JSONObj);//  一定要加,不然前端接收失败Response.End();}

2.2利用ashx:(利用javascriptSerializer进行序列化传输)

public class Handler : IHttpHandler {JavaScriptSerializer jsS = new JavaScriptSerializer();List<object> lists = new List<object>();string result = "";public void ProcessRequest (HttpContext context) {context.Response.ContentType = "text/plain";string method = context.Request["method"];if (!string.IsNullOrEmpty(method)){if (method == "getdata"){lists = new List<object>();var obj = new { names = "yuan", nums =12  };var obj1 = new { names = "yuan1", nums = 19 };lists.Add(obj);lists.Add(obj1);jsS = new JavaScriptSerializer();result = jsS.Serialize(lists);context.Response.Write(result);}}//context.Response.Write("Hello World");}public bool IsReusable {get {return false;}}}

最终效果:

转载于:https://www.cnblogs.com/cache-yuan/p/9218448.html

C#曲线分析平台的制作(二,echarts前后台数据显示)相关推荐

  1. C#曲线分析平台的制作(四,highcharts+ajax加载后台数据)

    在上一篇博客:C#曲线分析平台的制作(三,三层构架+echarts显示)中已经完成了后台的三层构架的简单搭建,为实现后面的拓展应用开发和review 改写提供了方便.而在曲线分析平台中,往往有要求时间 ...

  2. 一款开源的数据可视化分析平台,提供多种大屏模板,非常炫酷

    点击关注公众号,实用技术文章及时了解 DataGear是一款开源的数据可视化分析平台,可自由制作任何您想要的数据可视化看板,支持接入SQL.CSV.Excel.HTTP接口.JSON等多种数据源.系统 ...

  3. 手机APP分析平台项目(八)

    手机APP分析平台项目(一) 手机APP分析平台项目(二) 手机APP分析平台项目(三) 手机APP分析平台项目(四) 手机APP分析平台项目(五) 手机APP分析平台项目(六) 手机APP分析平台项 ...

  4. 手机APP分析平台项目(一)

    一.项目背景 随着互联网日益发展,手机使用人数越来越多,手机应用也越来越多,每个应用最核心的就是运营了,运营的好坏直接决定了该app的盈利与否,那么就需要一个平台帮助这些app应用运营,这个平台可以知 ...

  5. 4.5k star,一款开源的数据可视化分析平台,提供多种大屏模板,非常炫酷

    点击关注公众号,实用技术文章及时了解 DataGear是一款开源的数据可视化分析平台,可自由制作任何您想要的数据可视化看板,支持接入SQL.CSV.Excel.HTTP接口.JSON等多种数据源.系统 ...

  6. 微信公众平台开发(二) 微信公众平台示例代码分析

    http://www.cnblogs.com/mchina/archive/2013/06/07/3120592.html 微信公众平台开发(二) 微信公众平台示例代码分析 一.摘要 微信公众平台提供 ...

  7. html不需要编译就可以直接运行,分析php应用软件性能的诊断系统及其方法和性能管理平台的制作方法...

    分析php应用软件性能的诊断系统及其方法和性能管理平台的制作方法 [技术领域] [0001]本发明涉及软件应用性能管理(AMP)技术,尤其涉及一种分析超文本预处理器(Hypertext Preproc ...

  8. 企业项目实战---ELK日志分析平台之logstash数据采集(二)

    ELK日志分析平台 logstash数据采集 1.logstash简介 2.Logstash安装 3.标准输入到标准输出 4.标准输入到文件 5.标准输入到es主机 6.指定文件输入到es主机 7.s ...

  9. “数据+算法”双轮驱动,自助分析平台助银行实现“智慧转型”

    随着数字化转型的深入发展,不断积累的海量数据和信息成为商业银行的核心资产,银行可以借助大数据分析精准拉客.留存. 商业银行要想在数字化转型方面获得成功,只拥有海量数据是远远不够的,如何深入挖掘和分析才 ...

  10. 江门农商银行引入阿里云AnalyticDB,实现数据自助分析平台升级

    简介:文章来源:中金在线 3月5日,记者采访获悉,江门农商银行日前完成自助分析平台的升级换代,由阿里云云原生数据仓库AnalyticDB替代传统DB2数据库,满足银行业务报表.管理会计.风控.营销等多 ...

最新文章

  1. MODE —— 两个人在计算机上玩圈叉游戏|井字游戏(知识点:二维数组)
  2. C语言——球体体积判断素数用递归计算Fibonacci数列
  3. 敏捷开发日常跟进系列之四:跟进表
  4. php 递归函数中静态变量,php递归,静态变量,匿名函数使用
  5. select tables optimized away
  6. 2020、2021年FRM一级二级notes
  7. docker添加加速器
  8. python牛顿法寻找极值_使用Python实现牛顿法求极值
  9. html实现个人空间主页(附源码)
  10. 传感器i2c与arduino连接_ARDUINO的I2C通信详解 - arduino读取I2C总线上连接设备的地址...
  11. 带有风的诗词_带有风字的诗句
  12. 项目接入支付宝接口,验签出错
  13. 跨交换机实现VLAN实验
  14. Smartbi电子表格创建查询条件
  15. position的属性(sticky属性)
  16. Drag and drop拖放框架
  17. word指定页插入页码
  18. 基于python的微博热搜爬取及数据分析
  19. vasp 模拟退火_VASP 计算问题小结
  20. css图片渐变透明效果

热门文章

  1. idea删除不用或者失效的jdk
  2. jQuery 省市区多级(三级/四级/五级。。。)联动 BY 凨来了
  3. Spring Data JPA 常用 CRUD 操作汇总 及 关联关系( 操作 h2 内存数据)
  4. JS Array 对象常用方法 unshift / push 、shift / pop 、filter() / map()
  5. Alibaba Fastjson 入门详细教程
  6. 阶段1 语言基础+高级_1-3-Java语言高级_07-网络编程_第3节 综合案例_文件上传_4_综合案例_文件上传案例阻塞问题...
  7. 阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第2节 线程实现方式_11_Thread类的常用方法_sleep...
  8. iOS 自定义底部tabbar加号按钮实现方法
  9. Windows之IOCP
  10. SSL-ZYC 2414 简写单词