日期:2014-05-17  浏览次数:20393 次

求解一下。 纠结一天了。 ajax 怎么把返回的list取出来?
后台有一个list 转换成了josn格式 return给了前台ajax方法里面。 但是就是取不出来  请问代码是怎么写的。 

------解决方案--------------------
后台代码请参考:
<%@ WebHandler Language="C#" Class="_03_GetPhotoList" %>

using System;
using System.Web;
using System.Collections.Generic;
using System.Web.Script.Serialization;
public class _03_GetPhotoList : IHttpHandler {
    
    public void ProcessRequest (HttpContext context) {
        context.Response.ContentType = "text/plain";

        MyPhotos.BLL.Photos bll = new MyPhotos.BLL.Photos();
        List<MyPhotos.Model.Photos> list = bll.GetModelList("");
        
        //把对象转化成json格式的字符串
        JavaScriptSerializer ser = new JavaScriptSerializer();
        string s = ser.Serialize(list);
        context.Response.Write(s);
    }
 
    public bool IsReusable {
        get {
            return false;
        }
    }

}

前台代码参考:
 function Load(index) {
            $.get("../Ajax/Handler_Message.ashx", { mod: "list", index: index }, function (data) {
                var appendstr = [];
                var json = eval("(" + data + ")");
                var jsonstr = json.rows;
                appendstr.push("<caption>留言管理中心</caption><tr><th>Id号</th><th>内容</th><th>时间");
                appendstr.push("</th><th>状态</th><th>操作</th></tr>");
                for (var i = 0, p = jsonstr.length; i < p; i++) {
                    appendstr.push("<tr>");
                    appendstr.push("<td>" + jsonstr[i].tid + "</td>");
                    appendstr.push("<td>" + jsonstr[i].note + "</td>");