using System; using System.Collections; using System.Web; using System.Web.Script.Serialization;namespace Lab.Web { public class Handler1 : IHttpHandler { public void ProcessRequest(HttpContext context) { var data = new Hashtable(); data["success"] = true; data["now"] = DateTime.Now; data["message"] = "En Taro Adun!"; var jss = new JavaScriptSerializer(); var json = jss.Serialize(data); context.Response.ContentType = "text/javascript"; context.Response.Write(json); } public bool IsReusable { get { return false; } } } }
//返回集合跟返回对象是一样的处理模式前端交互 $.ajax({ type: "get", url: "@Url.Action("ShowDetail","UserInfo")", data: "ID="+id, dataType:"json", success: function (msg) { //msg是一个对象 如果是集合的话就要msg[i].UserName 来获取UserName这个属性的值 $("#DUserName").val(msg.UserName); $("#Dpwd").val(msg.pwd); $("#Daddress").val(msg.address); }, error:function(XMLHttpRequest, textStatus, errorThrown){ alert(errorThrown); } }); //后台处理 public JsonResult ShowDetail() { var id = Convert.ToInt32(Request["id"].ToString()); UserInfo u = db.UserInfo.Single(ui=>ui.id== id); //根据id查询单个对象 U里面有UserName pwd address 等属性 return Json(u,JsonRequestBehavior.AllowGet); //这里是返回单个对象 返回list也类似
using Newtonsoft.Json;你搜搜这个dll,它提供有后台转换的方法。JS:
eval函数转换JSON格式数据为JS对象
using System.Collections;
using System.Web;
using System.Web.Script.Serialization;namespace Lab.Web
{
public class Handler1 : IHttpHandler
{ public void ProcessRequest(HttpContext context)
{ var data = new Hashtable();
data["success"] = true;
data["now"] = DateTime.Now;
data["message"] = "En Taro Adun!"; var jss = new JavaScriptSerializer();
var json = jss.Serialize(data); context.Response.ContentType = "text/javascript";
context.Response.Write(json);
} public bool IsReusable
{
get { return false; }
}
}
}
$.ajax({
type: "get",
url: "@Url.Action("ShowDetail","UserInfo")",
data: "ID="+id,
dataType:"json",
success: function (msg) { //msg是一个对象 如果是集合的话就要msg[i].UserName 来获取UserName这个属性的值
$("#DUserName").val(msg.UserName);
$("#Dpwd").val(msg.pwd);
$("#Daddress").val(msg.address);
},
error:function(XMLHttpRequest, textStatus, errorThrown){
alert(errorThrown);
}
});
//后台处理
public JsonResult ShowDetail() {
var id = Convert.ToInt32(Request["id"].ToString());
UserInfo u = db.UserInfo.Single(ui=>ui.id== id); //根据id查询单个对象
U里面有UserName pwd address 等属性
return Json(u,JsonRequestBehavior.AllowGet);
//这里是返回单个对象 返回list也类似
}
type: "POST",
url: "/Handler1.ashx",
data: { },
success: function(result){
alert(result.message);
alert(result.now);
}
});
应该是不能返回你说的List<自定义类>
只能返回HTML,XML,JSon对象等
你可以在后台做处理,数据再发送到客户端