2013-05-03 48 views
0

我只想问你是否知道asp.net c#中分页的一些代码?在asp,net c上使用分页#

我有很多数据要查询,我想同时使用下拉和页面链接分页。除了使用自动生成分页的gridview之类的asp.net控件之外,还有什么办法吗?

请帮忙。谢谢

+0

jQue ry&webmethods/webservices – 2013-05-03 03:43:38

+0

你有任何样品吗? – JNGarcia87 2013-05-03 03:44:58

+0

你是否在为此使用'DataGridView'? – lexeRoy 2013-05-03 03:49:00

回答

0

我不知道这是否是你需要的,但在我的项目中,我编写了自己的代码来生成Data Pager。它根据这5个参数生成参考表格:

  1. 闪烁 - 链接在页码之前;
  2. 页面 - 当前页码;
  3. tpc - page count;
  4. first_last - 指示是否显示“第一个”和“最后”链接的标志;
  5. prev_next - 指示是否显示“Previous”和“Next”链接的标志;
 
public static string FormPager(string blink, int page, int tpc, bool first_last, bool prev_next) 
    { 
     string retstr = ""; 
     if (tpc > 1) 
     { 
      retstr = ""; 
      if (first_last) 
      { 
       if(page!=1) retstr = retstr + "First"; 
       else retstr = retstr + "First"; 
      } 
      if (prev_next) 
      { 
       if (page > 1) retstr = retstr + "Previous"; 
      } 
      if (page != 1) retstr = retstr + "1"; 
      else retstr = retstr + "1"; 
      if (tpc "; 
        if (i == page) retstr = retstr + i.ToString(); 
        else 
        { 
         retstr = retstr + "" + i.ToString() + ""; 
        } 
        retstr = retstr + ""; 
       } 
      } 
      else 
      { 
       if (page "; 
         retstr = retstr + "" + i.ToString() + ""; 
         retstr = retstr + ""; 
        } 
       } 
       else 
       { 
        retstr = retstr + "..."; 
        for (int i = 2; i > 0; i--) 
        { 
         retstr = retstr + ""; 
         retstr = retstr + "" + (page - i).ToString() + ""; 
         retstr = retstr + ""; 
        } 
       } 
       if (page != 1) retstr = retstr + "" + page.ToString() + ""; 
       if ((page + 5) >= tpc) 
       { 
        for (int i = page + 1; i "; 
         retstr = retstr + "" + i.ToString() + ""; 
         retstr = retstr + ""; 
        } 
       } 
       else 
       { 
        for (int i = 1; i "; 
         retstr = retstr + "" + (page + i).ToString() + ""; 
         retstr = retstr + ""; 
        } 
        retstr = retstr + "..."; 
       } 
      } 
      if (page != tpc) retstr = retstr + "" + tpc.ToString() + ""; 
      else retstr = retstr + "" + tpc.ToString() + ""; 
      if (prev_next) 
      { 
       if (page Next"; 
      } 
      if (first_last) 
      { 
       if(page!=tpc) retstr = retstr + "Last"; 
       else retstr = retstr + "Last"; 
      } 
      retstr = retstr + ""; 
     } 
     return retstr; 
    } 

但你需要manualy限制基于参数中的Request.QueryString

+0

你喜欢这个网站吗? www.next.co.uk,搜索产品和列表... – JNGarcia87 2013-05-03 06:07:21

+0

不,我只在一个简单的论坛和博客中使用此功能。 – 2013-05-03 06:41:01

+0

谢谢,我会尝试那些...... – JNGarcia87 2014-04-03 01:51:00

0

我们可以使用数据表分页。但数据表的弱点,第一次(onload)所有数据将被加载。

  1. 下载js和从datatables.net

  2. CSS创建DataGrid和选择数据源

  3. 在数据网格
  4. 禁用分页添加自定义的JS,例如:

     
    $(function() { 
            $("#gridAnswer").prepend($("").append($(this).find("tr:first"))).dataTable({ 
             "bSort": false, 
             "sDom": 't', 
             "bDestroy": true, 
             "sSwfPath": "/backend/swf/copy_csv_xls_pdf.swf" 
            }); 
           });