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的简单介绍 ...
随机推荐
- Servlet 2.0 && Servlet 3.0 新特性
概念:透传. Callback 在异步线程中是如何使用的.?? Servlet 2.0 && Servlet 3.0 新特性 Servlet 2.0 && Servle ...
- JS保留两位小数的几种方法
四舍五入 以下处理结果会四舍五入: var num =2.446242342; num = num.toFixed(2); // 输出结果为 2.45 不四舍五入 以下处理结果不会四舍五入: 第一种, ...
- 最新Java基础面试题及答案整理
最近在备战面试的过程中,整理一下面试题.大多数题目都是自己手敲的,网上也有很多这样的总结.自己感觉总是很乱,所以花了很久把自己觉得重要的东西总结了一下. 面向对象和面向过程的区别 面向过程: 优 ...
- PXE(preboot execution environment):【网络】预启动执行环节:引导 live光盘 ubuntu livecd 18.04+:成功
比较艰难的成功了. 艰难在于:吱吱吱吱(知知知知知):就是歌init启动参数而已! 最最艰难在于:这个nfs服务器软件有很大的关系.很多时候不是你不行,而是条件不具备 or 条件看似具备但其实有问题 ...
- Nginx 配置参数详解
#定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为等于CPU总核心数. worker_processes 8; #全局错误日志定义类型,[ debu ...
- VBA 全局常量定义
Public Const INDEX As Integer = 16 Public Const RESULT_SHEET As String = "result" Public C ...
- yum安装mysql-5.6(centos7)
centos 7.3 安装mysql 5.6 rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm yu ...
- python基础类型—数字(Number)
Python3 支持 int.float.bool.complex(复数). 在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long. 像大多数语言一样,数 ...
- vue里在自定义的组件上定义的事件
事件分为原生事件和自定义事件. vue里在自定义的组件上定义的事件,都被认为是自定义事件,必须用$emit()来触发. 这也是子组件向父传值的原理. 如果想作为原生事件,需要在原生事件后面加上.nat ...
- js 判断js,css是否引入,确保不重复引入
基本原理:function loadjscssfile(filename, filetype){if (filetype=="js"){ //if filename is a ...