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 相关文章推荐
event.srcElement+表格应用
Aug 29 Javascript
multiSteps 基于Jquery的多步骤滑动切换插件
Jul 22 Javascript
引用 js在IE与FF之间的区别详细解析
Nov 20 Javascript
JQuery中绑定事件(bind())和移除事件(unbind())
Feb 27 Javascript
jQuery使用$.get()方法从服务器文件载入数据实例
Mar 25 Javascript
jquery实现可自动收缩的TAB网页选项卡代码
Sep 06 Javascript
JS中对数组元素进行增删改移的方法总结
Dec 15 Javascript
微信小程序 动态的设置图片的高度和宽度详解及实例代码
Feb 24 Javascript
JQuery form表单提交前验证单选框是否选中、删除记录时验证经验总结(整理)
Jun 09 jQuery
快速理解 JavaScript 中的 LHS 和 RHS 查询的用法
Aug 24 Javascript
小程序实现上下移动切换位置
Sep 23 Javascript
关于JavaScript数组去重的一些理解汇总
Sep 10 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中的UNICODE 编码与解码
2013/06/29 PHP
php操作MongoDB基础教程(连接、新增、修改、删除、查询)
2014/03/25 PHP
Codeigniter实现智能裁剪图片的方法
2014/06/12 PHP
php使用pdo连接mssql server数据库实例
2014/12/25 PHP
深入解析PHP的Yii框架中的缓存功能
2016/03/29 PHP
PHPExcel 修改已存在Excel的方法
2018/05/03 PHP
Javascript中的相等与不等运算
2010/04/25 Javascript
网站404页面3秒后跳到首页的实例代码
2013/08/16 Javascript
jquery模拟SELECT下拉框取值效果
2013/10/23 Javascript
JavaScript二维数组实现的省市联动菜单
2014/05/08 Javascript
javascript笛卡尔积算法实现方法
2015/04/08 Javascript
JavaScript基于ajax编辑信息用法实例
2015/07/15 Javascript
bootstrap table操作技巧分享
2017/02/15 Javascript
使用bootstrap插件实现模态框效果
2017/05/10 Javascript
JavaScript用二分法查找数据的实例代码
2017/06/17 Javascript
对Vue beforeRouteEnter 的next执行时机详解
2018/08/25 Javascript
Vue递归实现树形菜单方法实例
2018/11/06 Javascript
Vue安装浏览器开发工具的步骤详解
2019/05/12 Javascript
微信小程序页面滚动到指定位置代码实例
2019/09/07 Javascript
jquery获取input输入框中的值
2019/11/13 jQuery
Vue切换Tab动态渲染组件的操作
2020/09/21 Javascript
Python中的引用和拷贝浅析
2014/11/22 Python
python实现将内容分行输出
2015/11/05 Python
Python 内置函数globals()和locals()对比详解
2019/12/23 Python
django admin后管定制-显示字段的实例
2020/03/11 Python
js实现弹框效果
2021/03/24 Javascript
历史专业个人求职信分享
2013/12/20 职场文书
生育关怀行动实施方案
2014/03/26 职场文书
工作建议书范文
2014/05/13 职场文书
机械工程学院大学生求职信
2014/05/25 职场文书
物业总经理助理岗位职责
2014/06/29 职场文书
骨干教师事迹材料
2014/12/17 职场文书
建国70周年的心得体会(2篇)
2019/09/20 职场文书
MySQL中distinct与group by之间的性能进行比较
2021/05/26 MySQL
如何用RabbitMQ和Swoole实现一个异步任务系统
2021/05/29 PHP
Java 定时任务技术趋势简介
2022/05/04 Java/Android