前端:
<table style="width: 100%;"> 
<tr> 
<td> 
搜索字: <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 
<asp:Button ID="Button1" runat="server" Text="搜索" OnClick="Button1_Click" /> 
</td> 
</tr> 
<tr> 
<td> 
<div id="divmain" runat="server"> </div> 
</td> 
</tr> 
<tr> 
<td> 
<asp:Button ID="btnFirst" runat="server" Text="首页" OnClick="btnFirst_Click" /> 
<asp:Button ID="btnPro" runat="server" Text="上一页" OnClick="btnPro_Click" /> 
<asp:Button ID="btnNext" runat="server" Text="下一页" OnClick="btnNext_Click" /> 
<asp:Button ID="btnLast" runat="server" Text="末页" OnClick="btnLast_Click" /> 
 <asp:Label ID="labCountPage" runat="server"></asp:Label> 
<asp:Label ID="labpage" runat="server"></asp:Label> 
<asp:TextBox ID="TextBox2" runat="server" Width="16px"></asp:TextBox> 
<asp:Button ID="btnGo" runat="server" OnClick="btnGo_Click" Text="Go" /> 
</td> 
</tr> 
</table>

后台:

protected void Page_Load(object sender, EventArgs e) 

if (!IsPostBack) 

ViewState["pageIndex"] = 1; 
dataPage(); 


private void dataPage() 

string constr = @"data source=.;initial catalog=News;user id=sa;password=111111;"; 
SqlConnection conn = new SqlConnection(constr); 
conn.Open(); 
SqlCommand cmd = conn.CreateCommand(); 
#region 用存储过程实现数据分页效果 
//cmd.CommandType = CommandType.StoredProcedure; 
//cmd.CommandText = "Pro_SelectNewsPage"; 
//cmd.Parameters.AddWithValue("@pageIndex", Convert.ToInt32(ViewState["pageIndex"])); 
//cmd.Parameters.AddWithValue("@pageSize", 3); 
//SqlParameter parm = new SqlParameter("@count", SqlDbType.Int); 
//cmd.Parameters.Add(parm); 
//parm.Direction = ParameterDirection.Output; 
#endregion 
#region 传递SQl语句实现分页并对搜索实现分页默认显示两条记录 
cmd.CommandType = CommandType.Text; 
cmd.CommandText = "select top 2 * from (select * from T_News where NewsTitle like @title) as t where t.Id not in(select top ((@pageIndex-1)*2) t.Id from (select * from T_News where NewsTitle like @title) as t) order by t.Id"; 
cmd.Parameters.AddWithValue("@pageIndex", Convert.ToInt32(ViewState["pageIndex"])); 
cmd.Parameters.AddWithValue("@title","%"+TextBox1.Text.Trim()+"%"); 
#endregion 
SqlDataAdapter adapter = new SqlDataAdapter(cmd); 
DataTable dt = new DataTable(); 
adapter.Fill(dt); 
//ViewState["pageCount"] = parm.Value; 
cmd.CommandText = "select count(*) from T_News where NewsTitle like @titles"; 
cmd.Parameters.AddWithValue("@titles", "%" + TextBox1.Text.Trim() + "%"); 
int sum = Convert.ToInt32(cmd.ExecuteScalar()); 
if (sum % 2 == 0) 

ViewState["pageCount"] = sum/2; 

else 

ViewState["pageCount"] = sum / 2 + 1; 

conn.Close(); 
conn.Dispose(); 
StringBuilder sb = new StringBuilder(); 
sb.Append("<table>"); 
foreach (DataRow row in dt.Rows) 

sb.Append("<tr><td>"+row["NewsTitle"].ToString()+"</td>"); 
sb.Append("<td>" + row["NewsContent"].ToString() + "</td>"); 
sb.Append("<td>" + row["CreateTime"].ToString() + "</td></tr>"); 

sb.Append("</table>"); 
divmain.InnerHtml = sb.ToString(); 
labCountPage.Text = "总共" + ViewState["pageCount"] + "页"; 
labpage.Text = "当前第" + ViewState["pageIndex"] + "页"; 

protected void Button1_Click(object sender, EventArgs e) 

ViewState["pageIndex"] = "1"; 
dataPage(); 

protected void btnFirst_Click(object sender, EventArgs e) 

ViewState["pageIndex"] = "1"; 
dataPage(); 

protected void btnPro_Click(object sender, EventArgs e) 

int index = Convert.ToInt32(ViewState["pageIndex"]); 
index--; 
if (index >= 1) 

ViewState["pageIndex"] = index; 
dataPage(); 


protected void btnNext_Click(object sender, EventArgs e) 

int index = Convert.ToInt32(ViewState["pageIndex"]); 
index++; 
if (index <= Convert.ToInt32(ViewState["pageCount"])) 

ViewState["pageIndex"] = index; 
dataPage(); 


protected void btnLast_Click(object sender, EventArgs e) 

ViewState["pageIndex"] =ViewState["pageCount"]; 
dataPage(); 

protected void btnGo_Click(object sender, EventArgs e) 

int i=Convert.ToInt32(TextBox2.Text); 
if (i > 0 && i <= Convert.ToInt32(ViewState["pageCount"])) 

ViewState["pageIndex"] = i; 
dataPage(); 

}

转:动态table分页(ORCALE)的更多相关文章

  1. html 布局;css3+jq 下拉菜单;table分页动态添加行;html5本地存储;简单易用的html框架

    简单好用的html框架,预览图见最后: 源码: 1.页面布局使用table: table 嵌套 +iframe 布局: 2.下拉菜单为jq+css3 动画; css input 无边框,select下 ...

  2. JQuery实现table分页

    1.直接贴代码: ; //每页显示的记录条数 ; //显示第curPage页 var len; //总行数 var page; //总页数 $(function(){ len =$(; //去掉表头 ...

  3. 项目总结17-使用layui table分页表格

    项目总结17-使用layui table分页表格总结 前言 在项目中,需要用到分页的表格来展示数据,发现layui的分页表格,是一个很好的选择:本文介绍layui table分页表格的前后端简单使用 ...

  4. Layui Table 分页记忆选中

    Layui Table 分页记忆选中 挺好的功能,之前为什么放弃了,哈哈哈! 在最早的版本中,layui 的 table 会记录每页的勾选状态,但很多用户反馈这是 bug,因为当他们获取选中数据时,其 ...

  5. Table分页显示调整

    这是table分页显示的代码,下面是对应调整的代码 /*分页调整*/ .fenye .dataTables_info{ line-height: 28px; } .fenye .pagination{ ...

  6. Bootstrap table分页问题汇总

    首先非常感谢作者针对bootstrap table分页问题进行详细的整理,并分享给了大家,希望通过这篇文章可以帮助大家解决Bootstrap table分页的各种问题,谢谢大家的阅读. 问题1 :服务 ...

  7. Table 分页处理

    介绍两种table分页处理:PHP分页 和 js(jquery.table)分页. 一:jquery.table: 1:下载两个文件:table_jui.css 和 jquery.dataTables ...

  8. bootstrap table分页(前后端两种方式实现)

    bootstrap table分页的两种方式: 前端分页:一次性从数据库查询所有的数据,在前端进行分页(数据量小的时候或者逻辑处理不复杂的话可以使用前端分页) 服务器分页:每次只查询当前页面加载所需要 ...

  9. layui table 分页 序号始终从”1“开始解决方法

    在用Layui table 分页显示数据,用 type:"numbers" 进行显示序号有以下的问题 1.表格自带的分页,page:true 这种分页,在切换页面的时候序号可以正常 ...

随机推荐

  1. AndroidStudio报错Software caused connection abort: recv failed

    Software caused connection abort: recv failed 这个问题网上有一种说法 已知会导致这种异常的一个场景如下: 客户端和服务端建立tcp的短连接,每次客户端发送 ...

  2. 利用Google翻译成多国语言的见解

    1.首先注意,英语句子中的 第一个单词的首字母要大写, 2.句子结尾了,要用句号. 3.英语中单词和前面的标点符号要留一个空格,如:  you.Are   应该是 you. Are you..... ...

  3. 剑指offer63:数据流中的中位数

    题目描述: 如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值.如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值. ...

  4. Nodejs学习笔记(三)—模块

    简介及资料 通过Node.js的官方API可以看到Node.js本身提供了很多核心模块 http://nodejs.org/api/ ,这些核心模块被编译成二进制文件,可以require('模块名') ...

  5. Servlet多文件上传

    各位大侠可能会对263电子邮箱中的"上传附件"功能有印象,就是:在浏览 器中点击"浏览",弹出一个对话框,选中文件后,单击"确定",文件就被 ...

  6. Eclipse svn 中文转成英文

  7. 使用Quartz.net来执行定时任务

    Quartz.net使用方法:http://www.cnblogs.com/lizichao1991/p/5707604.html 最近,项目中需要执行一个计划任务,组长就让我了解一下Quartz.n ...

  8. Struts2 Web Project 实现中文、英语的切换

    1.struts.xml文件部分配置: <package name="default" namespace="/login" extends=" ...

  9. nodejs --- 上传文件并保存到磁盘

    先复习下整个请求的过程 const express = require('express'); const static = require('express-static'); const cook ...

  10. macOS 中文件属性有at符号

    在mac os 下 HFS+的文件系统里,有时候有些文件会附加上mac的专有属性,@属性就表示文件或文件夹是来自互联网下载 xattr -l 文件名:查看attrxattr -d 属性名:删除attr