jquery+ajax 调用后台方法。 方法的里的内容是。 查找一些数据  显示在页面中。  我在这个方法里拼的字符串 一些"<table>"标签之类的。  但是数据量小的时候好用。 。 数据量大的时候。 就报错了。。 怎么解决。  给点建议。。 后台代码        [WebMethod]
        public static string GetEmployee(string division,string lbu, string company,string function)
        {
            DataTable dt = new VEmployee().GetEmployee(division,lbu,company,function);
            string s = "<table class='table'> <tr> <td><input type='checkBox' id='selectAll'></td> <td>Name</td><td>Division</td> <td>Company</td></tr> ";            foreach(DataRow dr in dt.Rows )
            {
                s += "<tr><td><input type='checkBox'></td><td>" + dr["DisplayName"] + "</td><td>" + dr["division"] + "</td> <td>" + dr["Company"] + "</td></tr>";
            }
            s += "</table>";            return s;
        }
前台代码
             $.ajax({
                    type: "Post",
                    url: "Default.aspx/GetEmployee",
                    //方法传参的写法一定要对,str为形参的名字,str2为第二个形参的名字
                    data: data,
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
                    timeout: 1000,
                    success: function(data) {
                        //返回的数据用data.d获取内容
                        $("#divResult").html(data.d);
                        //alert($.evalJSON(da ta).info);                        //alert(data[0]["name"].toString());
                    },                    error: function(err) {
                        alert("err");
                    }
                });

解决方案 »

  1.   

    是不是数据量过大了 。
    可以考虑用json传到前台 。
    再用js拼接字符串 。
      

  2.   

    建議你將數據用JSON傳遞到前臺頁面,然後再在前臺頁面中用EACH拼裝這個TABLE,這樣傳輸的數據量更少更快。
    報錯的內容是什麽?是不是你的數據中帶有非法字符?
      

  3.   

    我后台是datatable的。 我把datatable转成json了。  方法的返回值还是string  我不知道对不对。。 json我刚刚看了一点。。  结果也是有的好使有的不好使 报错是ajax那个回调函数里的错 没有错误信息。
      

  4.   

    你是在cs端拼接好html字符串然后返回到,我的建议是你可以把那个数据通过json返回,然后在客户端拼接HTML字符串。
      

  5.   

    楼主,你这种方法在数据量大的时候肯定会报错的,报超时错误,不用JSON,JSON传回来还得拼装,麻烦,你新建一页面,直接将新建页面的VIEW传回来就OK了。