js文件代码function getReturn(Url)  //提交为aspx,aspx页面路径, 返回页面的值
{
    if(typeof XMLHttpRequest != "undefined")
    {
        xmlhttp = new XMLHttpRequest();
    }
    else if(window.ActiveXObject)
    {
        var versions = ["MSXML2.XMLHttp.5.0","MSXML2.XMLHttp.4.0","MSXML2.XMLHttp.3.0","MSXML2.XMLHttp","Microsoft.XMLHttp"];
        for(var i = 0 ; i < versions.length; i++)
        {
            try
            {
                xmlhttp = new ActiveXObject(versions[i]);
                break;
            }
            catch(E)
            {
            }
        }
    }
        
    try 
    {
        xmlhttp.open('GET',Url,false);   
        xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded')
        xmlhttp.send(null);    
        
        if((xmlhttp.readyState == 4)&&(xmlhttp.status == 200))
        {
            return xmlhttp.responseText;
        }
        else
        {
           return null;
        }
    }
    catch (e) 
    {  
         alert("你的浏览器不支持XMLHttpRequest对象, 请升级"); 
    }    return null;
}显示页面的js方法 function show(id)
    {
      var url='xlb.aspx?id='+id;
      var re=getReturn(url);
      document.getElementById('showdiv').innerHTML=re;
    }显示页面点击一个input调用 show方法xlb.aspx.cs里面返回一个有数据table 显示在 id 为 showdiv 的 div里面  但返回来 万一数据很多就应该分页 这该怎么办 能实现吗 怎么样去实现呢?

解决方案 »

  1.   

     xlb.aspx.cs的代码一起贴 试一试看有人知道没public string div = "";
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                show();
            }
        }
        public void show()
        {
            int id = Convert.ToInt32(Request.QueryString["id"].ToString());
            DataTable dt = procode.sel_xlb(id);
            if (dt.Rows.Count > 0)
            {
                div += "</br></br><table class='bg'cellpadding='0' cellspacing='0'><tr style='background-color:#BBDDFF; height:25px'><td style='width:100px'>编号</td><td style='width:100px'>型号</td><td style='width:300px'>描述</td><td style='width:100px'>价格</td></tr>";
                for (int n = 0; n < dt.Rows.Count; n++)
                {
                    if (dt.Rows[n]["lb_pic"].ToString() == "")
                    {
                        div += "<tr style='height:25px'><td>" + dt.Rows[n]["lb_id"].ToString() + "</td><td>" + dt.Rows[n]["lb_type"].ToString() + "</td><td>" + dt.Rows[n]["lb_say"].ToString() + "</td><td>" + dt.Rows[0]["lb_price"].ToString() + "</td></tr>";
                    }
                    else
                    {
                        div += "<tr style='height:25px'><td>" + dt.Rows[n]["lb_id"].ToString() + "<a href='picshow.aspx?pic=" + dt.Rows[n]["lb_pic"].ToString() + "' target='_blank'><p style='color:red'>[图片]</p></a>" + "</td><td>" + dt.Rows[n]["lb_type"].ToString() + "</td><td>" + dt.Rows[n]["lb_say"].ToString() + "</td><td>" + dt.Rows[0]["lb_price"].ToString() + "</td></tr>";
                    }
                }
                div += "</table>";
            }
            else
            {
                div += "</br></br></br>暂无数据";
            }
            Response.Write(div);
        }
      

  2.   

    用JS分页实现困难,延迟也比较大。不如在Server端做分页。
      

  3.   

    xlb.aspx.cs页里直接分页,不用一次性全部返回。
      

  4.   

    不太懂,建议用ASPNETPAGER控件
      

  5.   

    100分啊 呵呵 check
      

  6.   

    JS实现实在太困难了
    网上有ajaxaspnetpager 坛子里一个牛人写的 ajax分页
    你可以看下
    分页的原理是一样的
    用JS在前台比较不靠谱
      

  7.   

    使用JSON实现数据传递
    传递的字符串应该是所有数据
      

  8.   

    使用sql语句分页
    select top 10 * from tablename order by id where id not in(select top ((i-1)*10) from tablename order by id)
      

  9.   

    可以采用CallBack容器实现
    参考www.cnblogs.com/mail-ricklee
    中的FortuneBase