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

时间:2024-05-21 10:11:47 

客户端用一个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()
{ }
}
}
标签:jQuery,json格式
0
投稿

猜你喜欢

  • 深入理解Python中装饰器的用法

    2022-04-25 18:59:31
  • Python实现的RSS阅读器实例

    2021-11-21 14:46:49
  • python中matplotlib实现随鼠标滑动自动标注代码

    2023-09-02 10:49:47
  • Python Sympy计算梯度、散度和旋度的实例

    2023-03-11 05:14:10
  • python+appium自动化测试之如何控制App的启动和退出

    2023-06-24 12:45:01
  • python3 爬取图片的实例代码

    2021-08-22 13:37:57
  • Python利用Canny算法检测硬币边缘

    2022-05-15 08:04:43
  • Mysql数据库之Binlog日志使用总结(必看篇)

    2024-01-20 20:15:16
  • Python爬虫之UserAgent的使用实例

    2022-03-10 15:41:39
  • win7下配置GO语言环境 + eclipse配置GO开发

    2024-02-16 16:02:35
  • Python实现emoji表情的简单方法

    2023-07-09 13:10:22
  • asp利用aspjpeg给图片生成PNG透明水印

    2009-03-20 14:01:00
  • Golang操作sqlite3数据库的详细教程

    2024-01-14 05:32:52
  • 撤回我也能看到!教你用Python制作微信防撤回脚本

    2021-08-05 14:38:30
  • python基于xmlrpc实现二进制文件传输的方法

    2022-10-07 09:24:43
  • Go编译原理之函数内联

    2024-05-22 10:12:38
  • JavaScript高级程序设计 读书笔记之十 本地对象Date日期

    2024-04-22 22:33:48
  • JS数组Array常用方法汇总+实例

    2024-04-30 10:42:02
  • 读写xml文件的2个小函数

    2007-08-23 12:59:00
  • Python Selenium 之关闭窗口close与quit的方法

    2023-11-14 01:28:06
  • asp之家 网络编程 m.aspxhome.com