首页 > 编程 > .NET > 正文

aspx后台传递Json到前台的两种接收方法推荐

2024-07-10 13:30:38
字体:
来源:转载
供稿:网友
下面小编就为大家带来一篇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[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到前台的两种接收方法推荐就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持VeVb武林网。



注:相关教程知识阅读请移步到ASP.NET教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表