今天小编给大家介绍下jQuery 用json格式返回自定义对象,平时喜欢jQuery 用json格式返回自定义对象的朋友赶紧收藏起来吧!记得点赞哦~
客户端用一个html页面调用一个ashx文件(一般http处理程序),返回 json格式的自定义对象:
html:
代码如下:
!DOCTYPE html PUBLIC "-//W3C//DTDXHTML1.0 Transitional//EN" ""
html xmlns=""
head
titleajax测试/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="?&"+$("#")()+"&"+$("#")();
$.get(url,function(result){
var obj=eval("("+result+")");
alert("姓名:"++""+"年龄:"+);
})
})
})
/script
input type="button" value="button" /span lang="zh-cn"姓名:/spaninput
type="text" /span lang="zh-cn"年龄:/span
input
type="text" /
/body
/html
文件:
代码如下:
%@ WebHandler Language="C#" %
using System;
using System.Web;
using ;
using ;
using ;
public class Handler : IHttpHandler {
public void ProcessRequest(HttpContext context)
{
= "text/plain";
string name = ""();
string age = ""();
person p1 = new person(name,age);
DataContractJsonSerializer djson = new DataContractJsonSerializer(());//将对象序列化为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()
{ }
}
}