Asp.net实现无刷新调用后台实体类数据并以Json格式返回
新建一般处理程序
publicclassTemp
{
publicintIndex{get;set;}
publicstringDescription{get;set;}
publicstringImagePath{get;set;}
publicDateTimeMyDate{get;set;}
}
//数据源
List<Temp>listTemp=newList<Temp>()
{
newTemp(){Index=1,ImagePath="Desert.jpg",Description="图片1",MyDate=DateTime.Now},
newTemp(){Index=2,ImagePath="Chrysanthemum.jpg",Description="图片2",MyDate=DateTime.Now},
newTemp(){Index=3,ImagePath="Penguins.jpg",Description="图片3",MyDate=DateTime.Now},
newTemp(){Index=4,ImagePath="Jellyfish.jpg",Description="图片4",MyDate=DateTime.Now},
newTemp(){Index=5,ImagePath="Tulips.jpg",Description="图片5",MyDate=DateTime.Now}
};
publicvoidProcessRequest(HttpContextcontext)
{
stringindex=context.Request["Index"];
stringjsonStr=string.Empty;
foreach(variteminlistTemp)
{
if(item.Index.ToString()==index)
{
JavaScriptSerializerserializer=newJavaScriptSerializer();
jsonStr=serializer.Serialize(item);//序列化为json格式
break;
}
}
context.Response.Write(jsonStr);
}
前台JS代码
$.getJSON("imageChange.ashx",{Index:i-1},function(result){
$("#<%=lblDescription.ClientID%>").text(result.Description);
$("#<%=Image1.ClientID%>").attr("src",path+result.ImagePath.substr(result.ImagePath.lastIndexOf('/')+1));
vard=eval("new"+result.MyDate.replace(/\//g,""));
$("#<%=lblDate.ClientID%>").text(Todate(d.ToLocalTime().toString()));
});
前台JS代码
//ToLocalTime()将UTC格式数据转换成标准日期格式
//注意JavaScriptSerializer会将日期序列号为自1970年1月1号的刻度值,所以js获取的时间值需做一些处理转换成标准日期格式
//详见http://msdn.microsoft.com/zh-cn/library/system.web.script.serialization.javascriptserializer.aspx
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,同时也希望多多支持毛票票!