020-Json结构数据序列化异步传递
C#中将.Net对象序列化为Json字符串的方法:
JavaScriptSerializer().Serialize(p),
JavaScriptSerializer在System.Web.Extensions.dll中,
是.Net3.x 中新增的类。
完整:System.Web.Script.Serialization.JavaScriptSerializer
FormTest.html
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<script src="js/jquery-1.7.1.min.js"></script>
<script>
$(function () {
$('#btnAdd').click(function () {
//$.post('FormTest.ashx',
// //'title=' + $('#title').val()+'&content='+$('#content').val(),
// //$('#form1').serialize(),//返回由name与value构成的键值对字符串
// $('#form1').serializeArray(),//由name与value构成的json对象的数组
// function(msg) {
// $('#showDiv').html(msg);
// }
//); //$.getJSON(
// 'FormTest.ashx',
// $('#form1').serialize(),
// function (data) {//{Title:***,Content:***}
// //{"Title":"xlb","Content":"yg"}
// $('#showDiv').html('title:'+data.Title+'<br>content:'+data.Content);
// }
//); $.getJSON(
'FormTest.ashx',
$('#form1').serializeArray(),
function (data) {//[{},{},{}....{}]
var list = $('#showDiv table');
$.each(data, function (index, item) {
list.append('<tr>' +
'<td>' + item.Title + '</td>' +
'<td>' + item.Content + '</td>' +
'</tr>');
});
}
);
});
});
</script> </head>
<body>
<form id="form1">
<input type="text" id="title" name="title" />
<br />
<input type="text" id="content" name="content" />
<br />
<input type="button" id="btnAdd" value="添加" />
</form>
<div id="showDiv">
<table border="1"></table>
</div>
</body>
</html>
FormTest.ashx
public class FormTest : IHttpHandler
{ public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain"; string title = context.Request["title"];
string content = context.Request["content"]; //context.Response.Write(title+"-"+content); #region 返回单一对象
//Result result=new Result();
//result.Title = title;
//result.Content = content; //JavaScriptSerializer js=new JavaScriptSerializer();
//string result1 = js.Serialize(result);
//context.Response.Write(result1);
#endregion #region 返回数组
List<Result> list = new List<Result>();
for (int i = ; i < ; i++)
{
list.Add(new Result()
{
Title = title + i,
Content = content + i
});
} JavaScriptSerializer js = new JavaScriptSerializer();
string result = js.Serialize(list);
context.Response.Write(result);
#endregion
} public bool IsReusable
{
get
{
return false;
}
}
} public class Result
{
public string Title { get; set; }
public string Content { get; set; }
}
020-Json结构数据序列化异步传递的更多相关文章
- ASP.NET MVC 网站开发总结(六)——简谈Json的序列化与反序列化
首先,先简单的谈一下什么是序列化与反序列化,序列化 (Serialization)将对象的状态信息转换为可以存储或传输的形式的过程.在序列化期间,对象将其当前状态写入到临时或持久性存储区.以后,可以通 ...
- json等序列化模块 异常处理
今日学习内容如下: 1.序列化模块 什么叫序列化——将原本的字典.列表等内容转换成一个字符串的过程就叫做序列化. 比如,我们在python代码中计算的一个数据需要给另外一段程序使用,那我们怎么给? 现 ...
- Python3基础(4)匿名函数、装饰器、生成器、迭代器、内置函数、json&pickle序列化、软件目录开发规范、不同目录间模块调用
---------------个人学习笔记--------------- ----------------本文作者吴疆-------------- ------点击此处链接至博客园原文------ 1 ...
- [.net 面向对象程序设计进阶] (12) 序列化(Serialization)(四) 快速掌握JSON的序列化和反序列化
[.net 面向对象程序设计进阶] (12) 序列化(Serialization)(四) 快速掌握JSON的序列化和反序列化 本节导读: 介绍JSON的结构,在JS中的使用.重点说明JSON如何在.N ...
- 在C#中,Json的序列化和反序列化的几种方式总结
在这篇文章中,我们将会学到如何使用C#,来序列化对象成为Json格式的数据,以及如何反序列化Json数据到对象. 什么是JSON? JSON (JavaScript Object Notation) ...
- C#中的Json的序列化和反序列化
Json是一种通用的数据格式,我们在数据交换的时候,经常会用到,下面介绍c#中的json序列化和反序列化,当然也可用在asp.net,silverlight,wpf中.我们在下面实例讲解如何进行Jso ...
- Json的序列化与反序列化
对于Json的序列化和反序列化,如果自己编写源代码来实现的话,很复杂很烦,所以我采用的是使用别人已经写好的引用文件.这类文件网上有很多,我用的是LitJson,当然Newtonsoft也可以,但后者需 ...
- Newtonsoft.Json 的序列化与反序列化
首先补充一点,Json.Net是支持序列化和反序列化DataTable,DataSet,Entity Framework和NHibernate的.我举例说明DataTable的序列化和反序列化.创建一 ...
- Asp.net中Json的序列化和反序列化(一)
JSON是专门为浏览器中的网页上运行的JavaScript代码而设计的一种数据格式.在网站应用中使用JSON的场景越来越多,本文介绍ASP.NET中JSON的序列化和反序列化,主要对JSON的简单介绍 ...
随机推荐
- 【规范】前端编码规范——css 规范
编码 在 css 首行设置文件编码为 UTF-8. @charset "UTF-8"; class 命名 class 名称应当尽可能短,并且意义明确.使用有意义的名称,使用有组织的 ...
- 同样:Hashtable较HashMap也是如此。
练习: ① 存车位的停开车的次序输出问题: ② 写两个线程,一个线程打印1-52,另一个线程答应字母A-Z.打印顺序为12A34B56C……5152Z.通过使用线程之间的通信协调关系. 注:分 ...
- error connecting: Timeout expired 超时时间已到. 达到了最大池大小 错误及Max Pool Size设置
[参考]Timeout expired 超时时间已到. 达到了最大池大小 错误及Max Pool Size设置 [参考][数据库-MySql] MySqlConnection error connec ...
- CentOS安装和配置Mysql
1. Centos 默认的yum 是没有Mysql5.7 所以需要配置下,从官网获取最新的RPM包 在MySQL官网中下载YUM源rpm安装包:https://dev.mysql.com/downlo ...
- python调用shell脚本时需要切换目录
最近遇到了一个问题,就是python代码调用shell脚本时,发现输入输出的文件,总是和自己预想的有偏差,但是单独在linux下执行命令的时候,却没有错误.后来发现是相对路径的问题,因为执行pytho ...
- docker 应用-1(安装以及基础命令)
Docker 安装 还是看官方文档吧TAT https://docs.docker.com/engine/getstarted/step_one/ 理解docker镜像和容器 镜像就是docker容器 ...
- redis操作封装类
class Redis { // 默认配置名称(使用load_config加载) private $_default_config_path = 'package/cache/redis'; ...
- 深入理解Java虚拟机(笔记)
内存分配: 为对象分配内存有两种方式,第一种是“指针碰撞”,也就是把内存分为两边,一边是已使用区域,另一边是未分配区域,分界线用指针记录,当要分配内存时,只需把指针向未分配区域移动需要的空间即可,通常 ...
- django form 组件插件
创建类: class RegForms(forms.Form): account = fields.CharField( required = True, #必填字段 max_length=12, m ...
- DbSet<T>().Where(e => true)之后再想Include怎么办?
DbSet<T>().Where(e => true)之后再想Include怎么办? 引用:https://www.cnblogs.com/godbell/p/7348411.htm ...