第一种:前台接收
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[0].Rows) { stbList = stbList + "{ \\"RecordTime\\":\\"" + dr[3].ToString() + "\\","; stbList = stbList + " \\"RoomTemp\\":\\"" + dr[1].ToString() + "\\"},"; } stbList = stbList.Substring(0, stbList.Length - 1);//去掉最后的一个逗号 stbList = stbList + "],"; stbList = stbList + "\\"Count\\":[{\\"total\\":" + ds.Tables[0].Rows .Count+ "}]";//用来记录一共返回了几条数据记录 stbList = stbList + "}"; context.Response.Write(stbList.ToString()); } public bool IsReusable { get { return false; } } public void RetrunHistoryData() { } } }
以上这篇aspx后台传递Json到前台的两种接收方法推荐就是小编分享给大家的全部内容了,希望能给大家一个参考。
本文地址:https://www.stayed.cn/item/345
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我