Ajax传递Json数据

首先我们要用到程序集Newtonsoft.Json.dll 和 JS插件 jquery.json-2.3.js  

我已经在资源库 提供了下载  没有的朋友可以去下载


前台aspx代码

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Ajax json.aspx.cs" Inherits="Test.Ajax_json" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script src="JS/jquery-1.6.2.js" type="text/javascript"></script>
    <script src="JS/jquery.json-2.3.js" type="text/javascript"></script>
</head>
<body>
   <input id="Button1" type="button" value="获取数据"  />
</body>
</html>

    <script type="text/javascript">
        $("#Button1").click(function () {

            function Car(make, model, year, color) {
                this.make = make;
                this.model = model;
                this.year = year;
                this.color = color;
            }
            var car1 = new Car("Dodge", "Coronet R/T", 1968, "yellow");
            var encoded = $.toJSON(car1);
            debugger;
            $.ajax({
                type: "POST",
                url: "AjaxJsonHandle.ashx",
                data: 'encoded=' + encoded,
                dataType: 'json',
                success: function (msg) {//msg其实就是Car类的一个实例 等价 car1
                    alert(msg.color);
                }
            });

        });
</script>

后台AjaxJsonHandle.ashx代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Newtonsoft.Json;

namespace Test
{
    /// <summary>
    /// AjaxJsonHandle 的摘要说明
    /// </summary>
    public class AjaxJsonHandle : IHttpHandler
    {

        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/plain";

            string encoded = context.Request["encoded"];
            Product deserializedProduct = JsonConvert.DeserializeObject<Product>(encoded);
            context.Response.Write(encoded);
        }



        public bool IsReusable
        {
            get
            {
                return false;
            }
        }
    }
}

实体类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace Test
{
    public class Product
    {
         public  string  make;
         public string model;
         public string year;
         public string color;
    }
}




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值