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 相关文章推荐
动感效果的TAB选项卡jquery 插件
Jul 09 Javascript
js如何实现设计模式中的模板方法
Jul 23 Javascript
ExtJS4中的requires使用方法示例介绍
Dec 03 Javascript
JavaScript字符串对象toUpperCase方法入门实例(用于把字母转换为大写)
Oct 17 Javascript
基于JS代码实现导航条弹出式悬浮菜单
Jun 17 Javascript
深入理解(function(){... })();
Aug 16 Javascript
js es6系列教程 - 新的类语法实战选项卡(详解)
Sep 02 Javascript
Angular中点击li标签实现更改颜色的核心代码
Dec 08 Javascript
React Native基础入门之调试React Native应用的一小步
Jul 02 Javascript
jQuery访问json文件中数据的方法示例
Jan 28 jQuery
详解JavaScript 的执行机制
Sep 18 Javascript
addEventListener()和removeEventListener()追加事件和删除追加事件
Dec 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
一个简单的MySQL数据浏览器
2006/10/09 PHP
php遍历文件夹和文件列表示例分享
2014/03/11 PHP
php程序总是提示验证码输入有误解决方案
2015/01/07 PHP
PHP抽象类与接口的区别详解
2019/03/21 PHP
window.open以post方式将内容提交到新窗口
2012/12/26 Javascript
js将iframe中控件的值传到主页面控件中的实现方法
2013/03/11 Javascript
Jquery实现视频播放页面的关灯开灯效果
2013/05/27 Javascript
JS获取各种宽度、高度的简单介绍
2014/12/19 Javascript
创建你的第一个AngularJS应用的方法
2015/06/16 Javascript
jQuery实现可高亮显示的二级CSS菜单效果
2015/09/01 Javascript
使用Vue制作图片轮播组件思路详解
2018/03/21 Javascript
小程序开发基础之view视图容器
2018/08/21 Javascript
node中的cookie的具体使用
2018/09/13 Javascript
JS数组splice操作实例分析
2019/10/12 Javascript
js实现3D照片墙效果
2019/10/28 Javascript
nodejs实现UDP组播示例方法
2019/11/04 NodeJs
vue实现放大镜效果
2020/09/17 Javascript
[47:02]2018DOTA2亚洲邀请赛3月29日 小组赛B组 VP VS paiN
2018/03/30 DOTA
Python splitlines使用技巧
2008/09/06 Python
DJANGO-ALLAUTH社交用户系统的安装配置
2014/11/18 Python
用Python写一个无界面的2048小游戏
2016/05/24 Python
python中pip的使用和修改下载源的方法
2019/07/08 Python
python实现按行分割文件
2019/07/22 Python
利用 PyCharm 实现本地代码和远端的实时同步功能
2020/03/23 Python
解决使用python print打印函数返回值多一个None的问题
2020/04/09 Python
如何用Django处理gzip数据流
2021/01/29 Python
CSS实现的一闪而过的图片闪光效果
2014/04/23 HTML / CSS
CSS3实现swap交换动画
2016/01/19 HTML / CSS
Nordgreen台湾官网:极简北欧设计手表
2019/08/21 全球购物
公司成立感言
2014/01/11 职场文书
《只有一个地球》教学反思
2014/02/14 职场文书
2014年班组工作总结
2014/11/20 职场文书
2015年加油站站长工作总结
2015/05/27 职场文书
解决Django transaction进行事务管理踩过的坑
2021/04/24 Python
一文了解JavaScript用Element Traversal新属性遍历子元素
2021/11/27 Javascript
python pandas 解析(读取、写入)CSV 文件的操作方法
2022/12/24 Python