后台使用类将对象序列化为JSon字符串
2011-12-01 22:47
281 查看
$.getJSON("Photolist.ashx",function (msg){ //每次加载之前清空 $("#content").html(""); //动态创建table var table=$("<table id='pList'></table>"); //添加表头 table.append($("<tr><th>序号</th><th>名字</th><th>照片</th><th>点击次数</th><th>支持</th><th>反对</th><th>时间</th><th>操作</th></tr>")); for(var i=0;i<msg.length;i++){ var photo=msg[i]; var tr=$("<tr ></tr>"); var td=$("<td>"+(i+1)+"</td>"); tr.append(td); var time=new Date().getTime(); td=$("<td><a href='DetailPhoto.aspx?id="+photo.PId+"&time="+time+"'>"+photo.PTitle+"</a></td>"); tr.append(td); td =$("<td><img src='ImgSmall.ashx?img=" + photo.PUrl + "' /></td>"); tr.append(td); td=$("<td>"+photo.PClicks+"</td>"); tr.append(td); td=$("<td><a href='' pid='"+ photo.PId +"'><img src='images/85.gif' /></a>(<span>"+photo.PUp+"</span>)</td>"); tr.append(td); //点击支持的事件 td.children("a").click(function (){ //防止其他浏览器不支持 var id=$(this).attr("pid"); var span=$(this).next(); //请求一般处理程序,给支持+1 //Math.random() $.get("UpOrDownPhoto.ashx?id=" +id+ "&type=up&time="+ new Date().getTime() ,function (msg){ if(msg=="1"){ //成功 更新页面上的span标签中的值 var n=parseInt(span.text())+1; span.text(n); }else if(msg=="0"){ alert("更新失败"); } }) return false ; }); td=$("<td><a href='' pid='" + photo.PId + "'><img src='images/86.gif' /></a>(<span>"+photo.PDown+"</span>)</td>"); tr.append(td); //为反对添加事件 td.children("a").click(function (){ var id=$(this).attr("pid"); var span=$(this).next(); //请求一般处理程序反对+1 $.get("UpOrDownPhoto.ashx?id="+id+"&type=down&time="+new Date().getTime() ,function (msg){ if(msg=="1"){ //成功 更新页面上的span标签中的值 var n=parseInt(span.text())+1; span.text(n); }else if(msg=="0"){ alert ("更新失败"); } }); //不让它转向,刷新 return false ; }); // td=$("<td >"+ChangeDateFormat(photo.PTime)+"</td>"); // tr.append(td); td=$("<td ><a href='' pid='"+photo.PId+"' url='"+photo.PUrl+"'>删 除</a></td>"); tr.append(td); //添加删除事件 td.children("a").click(function (){ var id=$(this).attr("pid"); var url=$(this).attr("url"); var link=$(this); $.get("DeletePhtoto.ashx?id="+id+"&time="+new Date().getTime(),function(msg){ if (msg=="1"){ alert ("删除成功"); //注意:有评论,即有外键约束的不能删除 //删除a标签所在的行tr //link.parent().parent().remove(); //删除以后重新加载 //getpage(pageIndex); }else if(msg=="0"){ alert ("删除失败"); } }) }) td=$("<td ><a href='EditPhoto.ashx?id="+photo.PId+"'>删 除</a></td>"); tr.append(td); table.append(tr); } //table添加到div中 $("#content").append(table); });
cs:
public class Photolist : IHttpHandler { public void ProcessRequest (HttpContext context) { context.Response.ContentType = "text/plain"; context.Response.Write(GetTable()); } protected string GetTable() { MyPhotoList.BLL.Photos bll = new MyPhotoList.BLL.Photos(); List<MyPhotoList.Model.Photos> list = bll.GetModelList(""); JavaScriptSerializer js = new JavaScriptSerializer(); return js.Serialize(list); } 使用之前必须添加命名空间using System.Web.Script.Serialization;
相关文章推荐
- 使用DataContractJsonSerializer类将类型实例序列化为JSON字符串和反序列化为实例对象
- 使用 EntityFramework后把一个对象序列化成json字符串引起循环引用的问题
- 使用 dynamic 标记解析JSON字符串 JDynamic :支持Json反序列化为Dynamic对象
- SpringMVC使用@ResponseBody注解来实现对象序列化成JSON字符串
- c# 使用 Newtonsoft.Json 序列化json字符串以及,反序列化对象
- Web前台传对象字符串到后台并让后台反序列化对象字符串的方法(ASP.NET) json对象和字符串的转换
- Ajax使用方法,经典Ajax封装,可接收解析后台传回的json对象和json数组
- 使用NewtonSoft.JSON.dll来序列化和发序列化对象
- JSON字符串反序列化成对象_部分属性值反序列化失败
- .Net使用Newtonsoft.Json.dll(JSON.NET)对象序列化成json、反序列化json示例教程
- jackson2.8.4java对象序列化成json字符串格式化时间
- Java之使用json-lib进行对象与json字符串之间的转换
- Json对象和字符串互相转换json数据拼接和JSON使用方式详细介绍(小结)
- json字符串与json对象、json序列化与反序列化
- 简单使用JSON,通过JSON 字符串来创建对象(二)
- Json——使用Json jar包实现Json字符串与Java对象或集合之间的互相转换
- .net 4中使用 dynamic,将json字符串转成对象的 万能方法。
- Ajax提交Json字符串,.net反序列化成Model对象
- Sturts2 使用 json-plugin序列化时屏蔽无关对象
- Java之使用json-lib进行对象与json字符串之间的转换