aspx后台传递Json到前台的两种接收方法
第一种:前台接收 dataType: "json",
success: function (data) {
var varReceiver = data;
。。。。。。。。。
}
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="echart2.aspx.cs" Inherits="RTC.echart2" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title> </title>
<!-- 引入 ECharts 文件 -->
<script src="scripts/echarts.common.min.js"></script>
<script src="scripts/jquery-1.10.2.min.js"></script>
<script src="scripts/json2.js"></script>
</head>
<body>
<form id="form1" runat="server"> <!-- 为 ECharts 准备一个具备大小(宽高)的Dom -->
<div id="main" style="width:1000px;height:400px;"> </div> <script type="text/javascript"> var varAxis;
var varSeries;
//var varRtcNO = $("#txtHid").val();
var varRtcNO = "35000002818";
var jdata; var myChart = echarts.init(document.getElementById('main'));
// 显示标题,图例和空的坐标轴
myChart.setOption({
title: {
text: '温度曲线图'
},
tooltip: {
trigger: 'axis',
axisPointer: {
animation: false
},
formatter: function (params) {
return params[0].name + '<br />温度:' + params[0].value + '°C';
}
},
legend: {
data: ['温度']
},
xAxis: {
data: []
},
yAxis: {
axisLabel: {
formatter: '{value} °C'
},
min: 18,
max:30
},
series: [{
name: '温度',
type: 'line',
smooth: true,
data: []
}]
});
// 异步加载数据
$.ajax({
type: "post",
url: "getrtchistorydata.ashx?rtcno=" + varRtcNO,
dataType: "json",
success: function (data) {
var varReceiver = data;
//var varReceiver = jQuery.parseJSON(data);
var varAxis=new Array() ;
var varSeries = new Array(varReceiver.Count[0].total); for (var i = 0; i < varReceiver.Count[0].total; i++) {
varAxis.push(varReceiver.Rows[i].RecordTime);
varSeries[i] = varReceiver.Rows[i].RoomTemp;
}
// 填入数据
myChart.setOption({
xAxis: {
data: varAxis
},
series: [{
//根据名字对应到相应的系列
name: '温度',
data: varSeries
}]
});
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert(errorThrown);
}
}); </script>
</form>
</body>
</html>
第二种:前台接收
dataType: "text",
success: function (data) {
//var varReceiver = data;
var varReceiver = jQuery.parseJSON(data);
。。。。。
}
两者统一的后台 一般处理程序ashx:
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web; namespace RTC
{
/// <summary>
/// getrtchistorydata 的摘要说明
/// </summary>
public class getrtchistorydata : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain"; string strRTCNo = context.Request.QueryString["rtcno"].ToString(); SqlConnection con = new SqlConnection("server=192.168.0.222;uid=sa;pwd=hiwits;database=CeShi_QingDao;Max Pool Size=2048;");
SqlCommand cmd = new SqlCommand("select RtcNO,RoomTemp,InstallPlace,convert(varchar,RecordTime,120) as RecordTime,systime from RTCHistory where RtcNO='" + strRTCNo + "' order by InstallPlace,RecordTime", con);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds); string stbList = "";
stbList = "{\"Rows\":[";
foreach (DataRow dr in ds.Tables[].Rows)
{
stbList = stbList + "{ \"RecordTime\":\"" + dr[].ToString() + "\",";
stbList = stbList + " \"RoomTemp\":\"" + dr[].ToString() + "\"},";
}
stbList = stbList.Substring(, stbList.Length - );//去掉最后的一个逗号 stbList = stbList + "],";
stbList = stbList + "\"Count\":[{\"total\":" + ds.Tables[].Rows .Count+ "}]";//用来记录一共返回了几条数据记录 stbList = stbList + "}"; context.Response.Write(stbList.ToString());
} public bool IsReusable
{
get
{
return false;
}
} public void RetrunHistoryData()
{ }
}
}
aspx后台传递Json到前台的两种接收方法的更多相关文章
- get请求传递json格式数据的两种方法
get请求参数为json格式数据,使用pyhton+request的两种实现方式如下: 方法一:使用requests.request() 示例代码如下: 1.导入requests和json impor ...
- jQuery ajax调用后台aspx后台文件的两种常见方法(不是ashx)
在asp.net webForm开发中,用Jquery ajax调用aspx页面的方法常用的有两种:下面我来简单介绍一下. [WebMethod] public static string SayHe ...
- spring boot 解决后台返回 json 到前台中文乱码之后出现返回json数据报错 500:no convertter for return value of type
问题描述 spring Boot 中文返回给浏览器乱码 解析成问号?? fastJson jackJson spring boot 新增配置解决后台返回 json 到前台中文乱码之后,出现返回json ...
- Python第十四天 序列化 pickle模块 cPickle模块 JSON模块 API的两种格式
Python第十四天 序列化 pickle模块 cPickle模块 JSON模块 API的两种格式 目录 Pycharm使用技巧(转载) Python第一天 安装 shell 文件 Py ...
- 选中没有选中的复选框,匹配含有某个字符串的正则,json取值的两种方法,把变量定义在外面跟里面的区别
一.筛选没有选中的复选框:not("input:checked") 二.匹配有VARCHAR的字符串:".*VARCHAR.*?" 三.json取值的两种方法 ...
- 两种Ajax方法
两种Ajax方法 Ajax是一种用于快速创建动态网页的技术,他通过在后台与服务器进行少量的数据交换,可以实现网页的异步更新,不需要像传统网页那样重新加载页面也可以做到对网页的某部分作出更新,现在这项技 ...
- 史上最全的CSS hack方式一览 jQuery 图片轮播的代码分离 JQuery中的动画 C#中Trim()、TrimStart()、TrimEnd()的用法 marquee 标签的使用详情 js鼠标事件 js添加遮罩层 页面上通过地址栏传值时出现乱码的两种解决方法 ref和out的区别在c#中 总结
史上最全的CSS hack方式一览 2013年09月28日 15:57:08 阅读数:175473 做前端多年,虽然不是经常需要hack,但是我们经常会遇到各浏览器表现不一致的情况.基于此,某些情况我 ...
- Service的两种启动方法
刚才看到一个ppt,介绍service的两种启动方法以及两者之间的区别. startService 和 bindService startService被形容为我行我素,而bindService被形容 ...
- visualvm远程监控jvm两种配置方法
参考:http://blog.itpub.net/17203031/viewspace-765810 一.Jstatd RMI远程监控方法 VisualVM在监控本地JVM的时候是很方便的.只要应用程 ...
随机推荐
- 探索c#之不可变数据类型
阅读目录: 不可变对象 自定义不可变集合 Net提供的不可变集合 不可变优点 不可变对象缺点 不可变对象 不可变(immutable): 即对象一旦被创建初始化后,它们的值就不能被改变,之后的每次改变 ...
- .NET中XML序列化的总结
[题外话] 以前虽然常用.NET中的序列化,但是常用的BinaryFormatter,也就是二进制文件的序列化,却鲜用XML的序列化.对于XML序列化,.NET中同样提供了一个非常方便的工具XmlSe ...
- JS、JQuery和ExtJs的跨域处理
1.什么是跨域?跨域,JavaScript出于安全方面的考虑,不允许跨域调用其他页面的对象.简单地理解就是因为JavaScript同源策略的限制,a.com 域名下的js无法操作b.com或是c.a. ...
- Jenkins常用插件说明(持续更新)
本文主要记录在学习以及使用Jenkins过程中常用的对我们有帮助的插件,同时本文将会持续进行更新.如果大家发现有其他野很好用的插件,也欢迎参照下面的格式,在评论中进行回复反馈. 一.通用插件 1.Em ...
- 《Entity Framework 6 Recipes》中文翻译系列 (23) -----第五章 加载实体和导航属性之预先加载与Find()方法
翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 5-2 预先加载关联实体 问题 你想在一次数据交互中加载一个实体和与它相关联实体. ...
- Linux更改用户密码
登录虚拟机后,使用passwd密令更改用户密码,新密码需要输入两次才能更改成功.不多说,直接上代码 [root@localhost Desktop]# passwd //使用passwd密令 Chan ...
- 关于laravel 5.3 使用redis缓存出现 找不到Class 'Predis\Client' not found的问题
昨天使用5.3.版本的laravel框架开发公司新项目, 发现将cache和session设置为了redis,执行了一下首页访问. 如图: laravel 版本号 简单配置一下控制器路由, Route ...
- DB的IO统计
对数据的IO操作,都是写入到数据库文件中,sys.dm_io_virtual_file_stats Returns I/O statistics for data and log files. sys ...
- Android图片缓存之Bitmap详解
前言: 最近准备研究一下图片缓存框架,基于这个想法觉得还是先了解有关图片缓存的基础知识,今天重点学习一下Bitmap.BitmapFactory这两个类. 图片缓存相关博客地址: Android图片缓 ...
- js 根据屏幕大小调用不同的css文件
原因:屏幕大小不一样,网站看起来总觉得怪怪的,所以,针对不同大小的屏幕,写了不同的css,写完了,要解决的问题就是:怎么根据屏幕的大小来引用不同的CSS,下面就是解决方法了. 解决方法:首先,在hea ...