jQuery asp.net 用json格式返回自定义对象


Posted in Javascript onApril 07, 2010

客户端用一个html页面调用一个ashx文件(一般http处理程序),返回 json格式的自定义对象:
html:

<!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> 
<title>ajax测试</title> 
<script src="js/jquery-1.2.3.js" type="text/javascript"></script><!-这里引用了jQuery框架-> 
</head> 
<body> 
<script type="text/javascript"> 
$(document).ready(function(){ 
$("#Button2").click(function(){ 
var url="handler.ashx?&name="+$("#Text1").val()+"&age="+$("#Text2").val(); 
$.get(url,function(result){ 
var obj=eval("("+result+")"); 
alert("姓名:"+obj.Name+"\n"+"年龄:"+obj.Age); 
}) 
}) 
}) 
</script> 
<input id="Button2" type="button" value="button" /><span lang="zh-cn">姓名:</span><input id="Text1" 
type="text" /><span lang="zh-cn">年龄:</span> 
<input id="Text2" 
type="text" /> 
</body> 
</html>

handler.ashx文件:
<%@ WebHandler Language="C#" Class="Handler" %> 
using System; 
using System.Web; 
using System.Runtime.Serialization.Json; 
using System.Collections; 
using System.Runtime.Serialization; 
public class Handler : IHttpHandler { 
public void ProcessRequest(HttpContext context) 
{ 
context.Response.ContentType = "text/plain"; 
string name = context.Request.Params["name"].ToString(); 
string age = context.Request.Params["age"].ToString(); 
person p1 = new person(name,age); 
DataContractJsonSerializer djson = new DataContractJsonSerializer(p1.GetType());//将对象序列化为 JavaScript 对象表示法 (JSON) 
djson.WriteObject(context.Response.OutputStream, p1); 
} 
public bool IsReusable { 
get { 
return false; 
} 
} 
[DataContract]//要序列化,一定要加这个属性 
public class person 
{ 
[DataMember]//属性“DataMember”只在“property, indexer, field”声明中有效。 
public string Name="无名士"; 
[DataMember] 
public string Age="0"; 
public override string ToString() 
{ 
return "姓名:" + Name + "年龄:" + Age; 
} 
public person(string name,string age)//自定义类person 
{ 
this.Name = name; 
this.Age = age; 
} 
public person() 
{ } 
} 
}
Javascript 相关文章推荐
jQuery的强大选择器小结
Dec 27 Javascript
JS的replace方法介绍
Oct 20 Javascript
一个很有趣3D球状标签云兼容IE8
Aug 22 Javascript
jQuery使用attr()方法同时设置多个属性值用法实例
Mar 26 Javascript
jQuery判断多个input file 都不能为空的例子
Jun 23 Javascript
js实现用户离开页面前提示是否离开此页面的方法(包括浏览器按钮事件)
Jul 18 Javascript
Angularjs过滤器使用详解
May 25 Javascript
Highcharts 多个Y轴动态刷新数据的实现代码
May 28 Javascript
详解JavaScript调用栈、尾递归和手动优化
Jun 03 Javascript
Node.js应用设置安全的沙箱环境
Apr 23 Javascript
JS运算符简单用法示例
Jan 19 Javascript
Vue登录拦截 登录后继续跳转指定页面的操作
Aug 04 Javascript
FileUpload 控件 禁止手动输入或粘贴的实现代码
Apr 07 #Javascript
js 小贴士一星期合集
Apr 07 #Javascript
Javascript 实用小技巧
Apr 07 #Javascript
javascript 函数使用说明
Apr 07 #Javascript
js下获取div中的数据的原理分析
Apr 07 #Javascript
Exjs 入门篇
Apr 07 #Javascript
javascript window.opener的用法分析
Apr 07 #Javascript
You might like
php使用高斯算法实现图片的模糊处理功能示例
2016/11/11 PHP
PHP实现与java 通信的插件使用教程
2019/08/11 PHP
laravel Task Scheduling(任务调度)在windows下的使用详解
2019/10/22 PHP
JQuery的ajax获取数据后的处理总结(html,xml,json)
2010/07/14 Javascript
js验证是否为数字的总结
2013/04/14 Javascript
jQuery基本过滤选择器使用介绍
2013/04/18 Javascript
jQuery中after的两种用法实例
2013/07/03 Javascript
jQuery Validate 验证,校验规则写在控件中的具体实例
2014/02/27 Javascript
js对象继承之原型链继承实例
2015/01/10 Javascript
深入理解js中this的用法
2016/05/28 Javascript
BootStrap表单控件之文本域textarea
2017/05/23 Javascript
详解webpack分离css单独打包
2017/06/21 Javascript
JavaScript中使用Async实现异步控制
2017/08/15 Javascript
浅谈Emergence.js 检测元素可见性的 js 插件
2017/11/18 Javascript
js拖动滑块和点击水波纹效果实例代码
2018/10/16 Javascript
详解vue移动端项目代码拆分记录
2019/03/15 Javascript
js new Date()实例测试
2019/10/31 Javascript
JavaScript数组排序功能简单实现
2020/05/14 Javascript
解决vue与node模版引擎的渲染标记{{}}(双花括号)冲突问题
2020/09/11 Javascript
详解Python命令行解析工具Argparse
2016/04/20 Python
Python实现基本数据结构中栈的操作示例
2017/12/04 Python
Python数据处理numpy.median的实例讲解
2018/04/02 Python
Jupyter notebook在mac:linux上的配置和远程访问的方法
2019/01/14 Python
详解Python基础random模块随机数的生成
2019/03/23 Python
解决python3中的requests解析中文页面出现乱码问题
2019/04/19 Python
numpy数组广播的机制
2019/07/12 Python
Django 接收Post请求数据,并保存到数据库的实现方法
2019/07/12 Python
如何基于python对接钉钉并获取access_token
2020/04/21 Python
python从Oracle读取数据生成图表
2020/10/14 Python
Python3+Django get/post请求实现教程详解
2021/02/16 Python
经典导游欢迎词大全
2014/01/16 职场文书
鼓励运动员的广播稿
2014/02/08 职场文书
瘦西湖导游词
2015/02/03 职场文书
2015秋季幼儿园开学寄语
2015/03/25 职场文书
创业计划书之少年玩具店
2019/09/05 职场文书
WCG2010 星际争霸决赛 Flash vs Goojila 1 星际经典比赛回顾
2022/04/01 星际争霸