我猜可以在绑顶的时候设定div,然后用javascript循环显示各div吧。

解决方案 »

  1.   

    自动刷新网页其实不需要用Javascript来写的,在Html的头文件里加上一句话就可以了!
    关键是你刷新网页的时候要把DataGrid的数据重新刷新一下。不清楚你的数据是从那里取得的,如果是一次取得的,在某次刷新的时候会不会出现数据已经到最后一条,在刷新的时候数据该如何处理?
      

  2.   

    陕北吴旗娃,纯探讨啊,能否实现象Excel那样,左右拉动显示不同的Column的效果?
      

  3.   

    呵呵,用个var My_timeout = setTimeout("GoPage();",1000);
    function GoPage()
    {
      window.location = "本页?Page=N"//这个N自己定义,如果下一页则本页数+1,反之
    }在后台Page_Load里判断Request["Page"]是否为空,不为空则执行
    MyGrid.CurrentPageIndex=Request["Page"];
    MyGrid.DataSource="数据";
    MyGrid.DataBind();
      

  4.   

    我的开发项目是ASP.NET+Oracle DataBase,用的是System.Data.OracleClient数据连接,是一次性取得的
      

  5.   

    写了个简单的例子,代码比较乱,但可以实现你的效果(保存后直接运行):test.aspx
    -------------------------------------------------------<%@Page Language="C#"%>
    <%@Import Namespace="System.Data"%>
    <%@Import Namespace="System.Data.SqlClient"%>
    <script runat="server">
    void Page_Load(object src,EventArgs e){
    if(!Page.IsPostBack){
    BindData();
    totalpagelbl.Text=grid.PageCount.ToString();
    curpagelbl.Text="1";
    RegisterPostBackScript();
    }
    }void BindData(){
    DataTable table=new DataTable();
    table.Columns.Add(new DataColumn("addr",typeof(string)));
    table.Columns.Add(new DataColumn("name",typeof(string)));
    table.Columns.Add(new DataColumn("age",typeof(int)));
    table.Columns.Add(new DataColumn("email",typeof(string)));
    DataRow row;
    for(int i=0;i<50;i++){
    row=table.NewRow();
    row["addr"]="addr "+i.ToString();
    row["name"]="name "+i.ToString();
    row["age"]=100-100%10;
    row["email"]="email"+i.ToString();
    table.Rows.Add(row);
    }
    grid.DataSource=table;
    grid.DataBind();
    }void ChangePage(int pageIndex){
    if(pageIndex>=grid.PageCount)
    pageIndex=0;
    grid.CurrentPageIndex=pageIndex;
    BindData();
    curpagelbl.Text=(pageIndex+1).ToString();
    PageButton.CommandArgument=(pageIndex).ToString();
    RegisterPostBackScript();
    }void GoToNextPage(object src,EventArgs e){
    Button btn=(Button)src;
    string index=btn.CommandArgument;
    ChangePage(int.Parse(index)+1);
    }void RegisterPostBackScript(){
    System.Text.StringBuilder sb=new System.Text.StringBuilder();
    sb.Append("<script Language=\"Javascript\">");
    sb.Append("setTimeout(\"");
    sb.Append(Page.GetPostBackEventReference(PageButton));
    sb.Append("\",10000);");
    sb.Append("<").Append("/").Append("script>");
    if(!Page.IsStartupScriptRegistered("ChangePage"))
    Page.RegisterStartupScript("ChangePage",sb.ToString());
    }
    </script>
    <HTML>
    <HEAD>
    <TITLE> Webdiyer制造:) </TITLE>
    <META NAME="Generator" CONTENT="EditPlus">
    <META NAME="Author" CONTENT="Webdiyer">
    </HEAD><BODY>
    <form runat="server">
    共<asp:Label runat="server" id="totalpagelbl" forecolor="red"/>页,当前为第
    <asp:Label runat="server" id="curpagelbl" forecolor="red"/>页<br>
    <asp:DataGrid id="grid" runat="server" AllowPaging=true PageSize=10 pagerstyle-mode="numericpages" pagerstyle-visible=false width="500">
    <SelectedItemStyle Font-Bold="True" ForeColor="#F7F7F7" BackColor="#738A9C"></SelectedItemStyle>
    <AlternatingItemStyle BackColor="#F7F7F7"></AlternatingItemStyle>
    <ItemStyle ForeColor="#4A3C8C" BackColor="#E7E7FF"></ItemStyle>
    <HeaderStyle Font-Bold="True" Wrap="False" HorizontalAlign="Center" ForeColor="#F7F7F7" BackColor="#006699"></HeaderStyle>
    </asp:DataGrid>
    <asp:Button runat="server" id="PageButton" CommandName="Paging" CommandArgument="0" onclick="GoToNextPage" visible=false/>
    </form>
    </BODY>
    </HTML>
      

  6.   

    我觉得webdiyer(陕北吴旗娃) 写的不错