基于jquery的分页控件(C#)


Posted in Javascript onJanuary 06, 2011

JS代码:
Code:

var _MaxPageSize = 0; 
var _PageSize = 5; 
var _IsUpDown = false; 
function InitPage(funName, currentPageSize, maxPageSize, pageSize, isUpDown) { 
_FunName = funName; 
_CurrentPageSize = currentPageSize; 
_MaxPageSize = maxPageSize; 
_PageSize = pageSize; 
_IsUpDown = isUpDown; 
} 
function ShowPage(objDiv) { 
var strResult = ""; 
var size = Math.floor(_PageSize / 2); 
var maxSize = _CurrentPageSize + size > _MaxPageSize ? _MaxPageSize : _CurrentPageSize + size; 
var minSize = _CurrentPageSize - size < 1 ? 1 : _CurrentPageSize - size; 
if (maxSize == _MaxPageSize) 
minSize = maxSize - _PageSize + 1; 
if (minSize == 1) 
maxSize = minSize + _PageSize - 1; 
var str = ""; 
for (var i = 0; i < _MaxPageSize; i++) { 
var curPage = i + 1; 
if (curPage == 1 || (curPage >= minSize && curPage <= maxSize) || curPage == _MaxPageSize) { 
var strPage = ""; 
if (curPage == minSize && (_CurrentPageSize > _PageSize || minSize > 2)) 
strPage += "... "; 
if (_CurrentPageSize == curPage) { 
strPage += "   <a href='#' style='font-size:14px;color:red'>" + curPage + "</a>"; 
} 
else { 
strPage += "  <a href=\"#\" style='font-size:14px' onclick=\"" + _FunName + "(" + curPage + ");\">" + curPage + "</a>"; 
} 
if (curPage == maxSize && _MaxPageSize - _CurrentPageSize - 1 > size) { 
strPage += "... "; 
} 
strResult += strPage; 
} 
} 
strResult += ""; 
if (_IsUpDown) { 
if (_CurrentPageSize == 1) 
strResult = "<a href='#' >上一页</a>" + strResult; 
else 
strResult = "   <a href=\"#\" onclick=\"" + _FunName + "(" + (_CurrentPageSize - 1) + ");\">上一页</a>" + strResult; 
if (_CurrentPageSize == _MaxPageSize) { 
strResult = strResult + "  <a>下一页</a></ul>"; 
} 
else { 
strResult = strResult + "   <a href=\"#\" onclick=\"" + _FunName + "(" + (_CurrentPageSize + 1) + ");\">下一页</a>"; 
} 
} 
document.getElementById(objDiv).innerHTML =strResult; 
}

HTML Code:
<script src="js/PageViewJS.js" type="text/javascript"></script> 
<script language="javascript" type="text/javascript"> 
function GetCurPage(curPage) { 
//取当前页信息 
document.forms[0].action = "ChrisBlessingList.aspx?Page=" + curPage; 
document.forms[0].submit(); 
} 
</script> 
</head> 
<body> 
<form id="form1" runat="server"> 
<div style="width: 1002px; margin: 0 auto;"> 
<div id="hdgz"><img src="images/sdzt_07.jpg" border="0" usemap="#Map" /></div> 
<div id="liebiao"> 
<div class="a_01" id="Container"> 
<ul class="lb"> 
<asp:DataList ID="ddlBlessingList" runat="server" Width="100%"> 
<ItemTemplate> 
<li class="bg01"> 
<table width="700" border="0" cellspacing="0" cellpadding="0"> 
<tr> 
<td width="100" height="90" rowspan="2"> 
<img src="images/sdzt_02/img.jpg" class="lb_img" /> 
</td> 
<td width="600" align="left" valign="middle" class="font_07"> 
<%#Eval("User_Name")%> 
对 【 
<%#Eval("To_UserName")%>】说: 
</td> 
</tr> 
<tr> 
<td align="left" valign="top" class="font_07" style="word-break: break-all; width: 600px; 
overflow: auto;"> 
    <%#Eval("To_Context")%> 
</td> 
</tr> 
</table> 
</li> 
</ItemTemplate> 
</asp:DataList> 
</ul> 
</div> 
<div class="fy"> 
<div id="divPage"> 
</div> 
</div> 
</div> 
<div id="back_zhufu"> 
</div> 
</div> 
</div> 
<asp:Literal ID="ltScript" runat="server"></asp:Literal> 
</form> 
</body> 
</html>

C# Code:
private int _MaxPageSize = 1; 
protected void Page_Load(object sender, EventArgs e) 
{ 
int page = 1; 
if (Request.QueryString["Page"] != null && Request.QueryString["Page"].ToString() != "") 
{ 
page = Convert.ToInt32(Request.QueryString["Page"]); 
} 
int _PageSize = 5; 
BindChristData(page, _PageSize); 
ltScript.Text = "<script language=\"javascript\" type=\"text/javascript\">InitPage(\"GetCurPage\", " + page + ", " + _MaxPageSize + ", 8, true); ShowPage(\"divPage\");</script>"; 
} 
private void BindChristData(int pageIndex, int pageSize) 
{ 
int intStartIndex = (pageIndex - 1) * pageSize + 1; 
int intEndIndex = pageIndex * pageSize; 
DataSet tChrisTable = TChristmaxWishBLL.GetTChristmaxWish(intStartIndex, intEndIndex); 
if (tChrisTable != null && tChrisTable.Tables[0].Rows.Count > 0) 
{ 
ddlBlessingList.DataSource = tChrisTable; 
ddlBlessingList.DataBind(); 
_MaxPageSize = Convert.ToInt32(tChrisTable.Tables[1].Rows[0][0].ToString()) % pageSize == 0 ? Convert.ToInt32(tChrisTable.Tables[1].Rows[0][0].ToString()) / pageSize : Convert.ToInt32(tChrisTable.Tables[1].Rows[0][0].ToString()) / pageSize + 1; 
} 
} 
Sql语句: 
select row_num,User_Name,User_Email,User_Phone,To_UserName,To_Context from(SELECT ROW_NUMBER() OVER ( ORDER BY To_Date desc)as row_num,User_Name,User_Email,User_Phone,To_UserName,To_Context from TChristmaxWish where Is_Del=0 )as newTable where row_num between @intStrIndex and @intEndIndex; 
select count(id) from TChristmaxWish where Is_Del=0
Javascript 相关文章推荐
从URL中提取参数与将对象转换为URL查询参数的实现代码
Jan 12 Javascript
jQuery中replaceAll()方法用法实例
Jan 16 Javascript
每天一篇javascript学习小结(面向对象编程)
Nov 20 Javascript
JavaScript实现点击按钮直接打印
Jan 06 Javascript
canvas实现图片根据滑块放大缩小效果
Feb 24 Javascript
Vue-resource拦截器判断token失效跳转的实例
Oct 27 Javascript
使用vue实现简单键盘的示例(支持移动端和pc端)
Dec 25 Javascript
vue小白入门教程
Apr 02 Javascript
vue-router懒加载速度缓慢问题及解决方法
Nov 25 Javascript
qrcode生成二维码微信长按无法识别问题的解决
Apr 04 Javascript
layer.open组件获取弹出层页面变量、函数的实例
Sep 25 Javascript
使用Vue3+Vant组件实现App搜索历史记录功能(示例代码)
Jun 09 Vue.js
用jquery实现的模拟QQ邮箱里的收件人选取及其他效果(一)
Jan 06 #Javascript
jQuery1.3.2 升级到jQuery1.4.4需要修改的地方
Jan 06 #Javascript
基于jQuery的试卷自动排版系统实现代码
Jan 06 #Javascript
ASP中Sub和Function的区别说明
Aug 30 #Javascript
TBCompressor js代码压缩
Jan 05 #Javascript
关于Mozilla浏览器不支持innerText的解决办法
Jan 01 #Javascript
Js event事件在IE、FF兼容性问题
Jan 01 #Javascript
You might like
php 空格,换行,跳格使用说明
2009/12/18 PHP
thinkphp项目部署到Linux服务器上报错“模板不存在”如何解决
2016/04/27 PHP
zend框架实现支持sql server的操作方法
2016/12/08 PHP
PHP写的简单数字验证码实例
2017/05/23 PHP
PHP基于openssl实现非对称加密代码实例
2020/06/19 PHP
PHP7 弃用功能
2021/03/09 PHP
zShowBox 图片放大展示jquery版 兼容性
2011/09/24 Javascript
JavaScript高级程序设计 阅读笔记(十二) js内置对象Math
2012/08/14 Javascript
对于this和$(this)的个人理解
2013/09/08 Javascript
jquery清空表单数据示例分享
2014/02/13 Javascript
使用JQuery库提供的扩展功能实现自定义方法
2014/09/09 Javascript
javascript实现类似java中getClass()得到对象类名的方法
2015/07/27 Javascript
AngularJS ng-controller 指令简单实例
2016/08/01 Javascript
vue.js利用Object.defineProperty实现双向绑定
2017/03/09 Javascript
JavaScript中双符号的运算详解
2017/03/12 Javascript
Node.js 8 中的重要新特性
2017/06/28 Javascript
vue-cli V3.0版本的使用详解
2018/10/24 Javascript
浅谈Vue数据响应
2018/11/05 Javascript
详解react native页面间传递数据的几种方式
2018/11/07 Javascript
vue获取form表单的值示例
2019/10/29 Javascript
在Python中关于使用os模块遍历目录的实现方法
2019/01/03 Python
Python正则表达式匹配和提取IP地址
2019/06/06 Python
python字符串替换re.sub()方法解析
2019/09/18 Python
python scrapy重复执行实现代码详解
2019/12/28 Python
Python3-异步进程回调函数(callback())介绍
2020/05/02 Python
80年代复古T恤:TruffleShuffle
2018/07/02 全球购物
Tretorn美国官网:瑞典外套和鞋类品牌,抵御风雨
2018/07/19 全球购物
教师自我鉴定范文
2013/11/10 职场文书
《可爱的动物》教学反思
2014/02/22 职场文书
出生医学证明书
2014/09/15 职场文书
公司周年庆典标语
2014/10/07 职场文书
2014年接待工作总结
2014/11/26 职场文书
2014年学前班工作总结
2014/12/08 职场文书
2016年庆“七一”主题党日活动总结
2016/04/05 职场文书
导游词之襄阳古城
2019/09/27 职场文书
Python绘制散乱的点构成的图的方法
2022/04/21 Python