1. html页面全部代码

<html>
<head>
   
<title></title>

<script src="../../Scripts/jquery-1.4.1.min.js"
type="text/javascript"></script>

<script src="../../Scripts/JqueryJson.js"
type="text/javascript"></script>

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

             //数组里的字段的命名和类型要和一般处理程序里定义的类里的变量要一样

             //否则会出问题
               
var postdata = new Array();
               
postdata[1] = { id: 1, number: "yes" };
               
postdata[2] = { id: 2, number: "no" };

var postData = $.toJSON(postdata);  //把数组转换成json字符串

//将json字符串反序列化,这个只是测试一下数组是否转换成json字符串

var content = $.parseJSON(postData);
               
$.each(content, function () {
                   
alert(this.number);
               
});

//post提交并处理

$.post("json.ashx", { "array": postData }, function (data, status)
{
                   
if (status == "success") {
                       
alert(data);
                   
}
               
});

});
       
})
   
</script>
</head>
<body>
<input type="button" value="json"
id="json"/>
</body>
</html>

2.json.ashx页面全部代码

<%@ WebHandler Language="C#" class="json"
%>

using System;
using System.Web;
using System.Web.Script.Serialization;
using System.Collections.Generic;

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

//接受出过来的值

string sun = context.Request["array"].ToString();

//实例化JavaScriptSerializer对象
       
JavaScriptSerializer jss = new JavaScriptSerializer();
       
List<array> a = new
List<array>();

//把json转换其他list<array>类型
       
a = jss.Deserialize(sun,
typeof(List<array>)) as
List<array>;
       
string meg=null;
       
foreach (var item in a)
       
{
           
meg += item.number;
       
}
       
context.Response.Write(meg);
    }

public class array
    {
       
public int id { get; set; }
       
public string number { get; set; }
   
}
   
public bool IsReusable {
       
get {
           
return false;
       
}
    }

}

随机推荐

  1. netlink---Linux下基于socket的内核和上层通信机制 (转)

    需要在linux网卡 驱动中加入一个自己的驱动,实现在内核态完成一些报文处理(这个过程可以实现一种零COPY的网络报文截获),对于复杂报文COPY下必要的数据交给用户 态来完成(因为过于复杂的报文消耗 ...

  2. PHP前端$.ajax传递数据到后台

    <html> <head> <meta http-equiv="Content-Type" content="text/html; char ...

  3. Legacy安装win7和Ubuntu14.04双系统

    Legacy安装win7和Ubuntu14.04双系统 安装环境 Legacy启动模式(传统引导) 笔记本已安装win7 硬盘启动顺序为: U盘 硬盘 光驱 安装方法 制作U盘启动盘 在Ubuntu官 ...

  4. JPages分页插件的使用

    废话不多说,直接上代码. 首先下载JPages的js和css包,附上下载地址:http://dl.oschina.net/softfile/jpages/jpages-latest-138554713 ...

  5. nginx——内存池篇

    nginx--内存池篇 一.内存池概述 内存池是在真正使用内存之前,预先申请分配一定数量的.大小相等(一般情况下)的内存块留作备用.当有新的内存需求时,就从内存池中分出一部分内存块,若内存块不够再继续 ...

  6. Android ADB 端口占用问题解决方案

    问题描述: The connection to adb is down, and a severe error has occured. You must restart adb and Eclips ...

  7. 剑指offer--面试题6

    题目:由前序.中序遍历序列重建二叉树 虽然思路能想到,但是实际写却无从下手...下面重现作者代码,多多实践... #include<exception> //首先定义二叉树节点 struc ...

  8. zoj 3232 It's not Floyd Algorithm(强联通分量,缩点)

    题目 /******************************************************************/ 以下题解来自互联网:Juny的博客 思路核心:给你的闭包 ...

  9. hdu 1517 A Multiplication Game 博弈论

    思路:求必胜区间和必败区间! 1-9 先手胜 10-2*9后手胜 19-2*9*9先手胜 163-2*2*9*9后手胜 …… 易知右区间按9,2交替出现的,所以每次除以18,直到小于18时就可以直接判 ...

  10. 典型重构3 (Try/Catch)

    Try/Catch 块过多 public Customer GetCustomer(string customerId) { try { var command = new SqlCommand(); ...