现在问题Repeater中有一个控件DropDownList怎么实现ajax分页呢 忘高手指点 链接 或源代码都可以!下班结帖!

解决方案 »

  1.   

    http://plugins.jquery.com/project/Pager
      

  2.   

    http://blog.csdn.net/porschev/archive/2011/01/04/6114997.aspx
      

  3.   

    我用的分页控件是 AspNetPager,也是无刷新分页
    分页控件
      

  4.   

    楼主我自己做的分页 可以实现翻一页读取一一页的功能 与你分享下
    例子:
    <asp:UpdatePanel ID="UpdatePanel1" runat="server" 
                        UpdateMode="Conditional">
             <ContentTemplate>
    <div class="shop_content ml10">
    <div class="shop_name h40 lh200 tc fn f20 vm">店铺名称</div>
                        <div class="shop_book_list mt10 pb10">
                            <asp:UpdateProgress ID="UpdateProgress1" runat="server" DisplayAfter="10" 
                                AssociatedUpdatePanelID="UpdatePanel1">
                            <ProgressTemplate>
                            我正在努力地翻页哦,请稍后......
                            </ProgressTemplate>
                            </asp:UpdateProgress>
    <div class="book_box ml10">
                                <a href='<%=getbook(books[0].Book_id.ToString())%>' class="book_img"><img src='<%=books[0].Book_imgsrc.ToString()%>' /></a>
    <div class="book_name mt5"><a href="<%=getbook(books[0].Book_id.ToString())%>" class="no_unl"><%=books[0].Book_name.ToString() %></a></div>
    <div class="book_price mt5 pt5"><span>卖家价¥:</span><span class="book_price"><%=books[0].Book_piece.ToString()%></span></div>
    中略同理                                           <div class="f12 tc pagenav">
                            <asp:Button ID="Button1" runat="server" Height="20px" Text="上一页" Width="46px" 
                                Font-Size="13px" onclick="Button1_Click" CssClass="button" />
                            <asp:DropDownList ID="DropDownList1" runat="server" 
                                Height="20px" onselectedindexchanged="DropDownList1_SelectedIndexChanged" 
                                Font-Size="12px" Width="75px" AutoPostBack="True" CssClass="button">
                            </asp:DropDownList>
                            <asp:Button ID="Button2" runat="server" Height="20px" Text="下一页" Width="46px" 
                                Font-Size="13px" onclick="Button2_Click" CssClass="button" />
                        </div>                   
                    </div>
                           </ContentTemplate>
                     <Triggers>
                <asp:AsyncPostBackTrigger ControlID="DropDownList1" 
                    EventName="SelectedIndexChanged" />
                <asp:AsyncPostBackTrigger ControlID="Button1" EventName="Click" />
                <asp:AsyncPostBackTrigger ControlID="Button2" EventName="Click" />
            </Triggers>
        </asp:UpdatePanel>
    后台:    public int pagenum;
        public int userid;
        public int pagecom;
        public static userbook[] books = new userbook[8];
        public static comments[] comm = new comments[5];
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                int comnum;
                int booknum;
                userid = Convert.ToInt32(Request.QueryString["user_id"].ToString());
                int t = 0;
                SqlDataReader outresult = outresul(userid, 1);
                SqlDataReader outcom = outcomment(userid, 1);
                for (int g = 0; g < 8; g++)
                {
                    books[g] = new userbook();
                }
      outresult.Read();
                booknum = Convert.ToInt32(outresult["user_sellingnum"].ToString());
                do
                {
                    books[t].Book_name = outresult["book_name"].ToString();
                    books[t].Book_piece = outresult["book_price"].ToString();
                    books[t].Book_id = outresult["book_id"].ToString();
                    books[t].Book_imgsrc = outresult["book_imgsrc"].ToString();
                    t++;
                }
                while (outresult.Read() && t < 8);
     if (booknum % 8 != 0)
               {
                 pagenum = booknum / 8+ 1;
               }
                  else
               {
                 pagenum = booknum / 8;
               }
    for (int a = 1; a <= pagenum;a++ )
                 {
                     ListItem li = new ListItem();
                     li.Value = a.ToString();
                     li.Text="第"+a.ToString()+"页";
                     DropDownList1.Items.Add(li);
                 }
                     Button1.Visible = false;
       if(pagenum==1)
                {
                    Button2.Visible = false;
                }
    }
                 DropDownList1.SelectedIndex = 0;
                 DropDownList1.DataBind();
        public SqlDataReader outresul(int userid,int pagenum)
        {
            sql sql1 = new sql();
            SqlCommand result = new SqlCommand();
            result.Connection = sql1.resql();
            result.CommandText = "select top 8 Booktable.book_id,Booktable.book_name,Booktable.book_price,Booktable.book_imgsrc,Usertable.user_sellingnum from Booktable,Usertable where Booktable.user_id=@user_id and Usertable.user_id=@user_id and Booktable.book_id not in(select top(@head) Booktable.book_id from Booktable,Usertable where Booktable.user_id=@user_id  order by book_id ) order by book_id";
            result.Parameters.Add("@user_id", SqlDbType.Int).Value = userid;
            result.Parameters.Add("@head", SqlDbType.Int).Value = (pagenum-1)*8;
            SqlDataReader outresult = result.ExecuteReader();
            return outresult;
        }
     protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
        {
           userid = Convert.ToInt32(Request.QueryString["user_id"].ToString());
           int k = DropDownList1.SelectedIndex + 1;
           int t = 0;
           SqlDataReader outresult = outresul(userid,k);
           for (int g = 0; g < 8; g++)
           {
               books[g] = new userbook();
           }
           while (outresult.Read() && t < 8)
           {
               books[t].Book_name = outresult["book_name"].ToString();
               books[t].Book_piece = outresult["book_price"].ToString();
               books[t].Book_id = outresult["book_id"].ToString();
               books[t].Book_imgsrc = outresult["book_imgsrc"].ToString();
               t++;
           }
           if (k == 1)
           {
               Button1.Visible = false;
           }
            else
           {
                Button1.Visible = true;
           }
           if (k == DropDownList1.Items.Count)
           {
               Button2.Visible = false;
           }
           else
           {
               Button2.Visible=true;
           }
           UpdatePanel1.Update();
            
        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            DropDownList1.SelectedIndex = DropDownList1.SelectedIndex - 1;
            DropDownList1_SelectedIndexChanged(sender,e);
        }
        protected void Button2_Click(object sender, EventArgs e)
        {
            DropDownList1.SelectedIndex = DropDownList1.SelectedIndex + 1;
            DropDownList1_SelectedIndexChanged(sender, e);
       }
    注释就懒得写了 楼主自己看吧 这里用的是UPDATAPANEL做的动态翻页 用SQL语句实现SQL内部翻页后传出数据 没怎么用控件
      

  5.   

    在这个篇博客的最下面己经补上示例下载地址了希望对LZ有帮助http://blog.csdn.net/porschev/archive/2011/01/04/6114997.aspx
      

  6.   

    CSDN上传一个资源出来的太慢了上午上传的。。下午才出来还浪费我发个40分的帖