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的时候是很方便的.只要应用程 ...
随机推荐
- Lesson 10 Not for jazz
Text We have an old musical instrument. It is called a clavichord. It was made in Germany in 1681. O ...
- 利用gulp解决前后端分离的header/footer引入问题
在我们进行前后端完全分离的时候,有一个问题一直是挺头疼的,那就是公共header和footer的引入.在传统利用后端渲染的情况下,我们可以把header.footer写成两个单独的模板,然后用后端语言 ...
- lua中清空目录和递归创建目录
lua中的 lfs.mkdir lfs.rmdir只能针对单个目录,且lfs.rmdir不能清空文件夹 于是我想到了使用os.execute 递归创建目录如下os.execute("mkdi ...
- [备忘]没有为扩展名“.cshtml”注册的生成提供程序
webconfig中配置 <compilation debug="true" targetFramework="4.5.1"> < ...
- 《Entity Framework 6 Recipes》翻译系列 (5) -----第二章 实体数据建模基础之有载荷和无载荷的多对多关系建模
2-3 无载荷(with NO Payload)的多对多关系建模 问题 在数据库中,存在通过一张链接表来关联两张表的情况.链接表仅包含连接两张表形成多对多关系的外键,你需要把这两张多对多关系的表导入到 ...
- iOS-语言本地化
在使用本地化语言之前,来看看本地化语言文件内容的结构(这里我以Chinese为例):"Cancel"="取消";"OK"="确定& ...
- Directive间的通信
Directive间的通信 源自大漠的<AngularJS>5个实例详解Directive(指令)机制 这个例子主要的难点在于如何在子Expander里面访问外层Accordion的sco ...
- datagrid可编辑表格
使用datagrid对商品数量和单价进行修改 $(function() { var $dg = $("#zhong"); $dg.datagrid({ url : "ge ...
- 【Win 10应用开发】实现全屏播放的方法
有人会问,以前的MediaElement控件不是有现成的一排操作按钮吗?而且可以直接进入全屏播放.是的,我们知道,以往的Store App都是在全屏模式下运行的,只要MediaElement控件填满整 ...
- 编译opengl编程指南第八版示例代码通过
最近在编译opengl编程指南第八版的示例代码,如下 #include <iostream> #include "vgl.h" #include "LoadS ...