基于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 相关文章推荐
一个关于javascript匿名函数的问题分析
Mar 30 Javascript
在AngularJS应用中实现一些动画效果的代码
Jun 18 Javascript
javascript中JSON对象与JSON字符串相互转换实例
Jul 11 Javascript
JavaScript中Function函数与Object对象的关系
Dec 17 Javascript
vue.js入门教程之计算属性
Sep 01 Javascript
JS中事件冒泡和事件捕获介绍
Dec 13 Javascript
angularJS利用ng-repeat遍历二维数组的实例代码
Jun 03 Javascript
基于iScroll实现下拉刷新和上滑加载效果
Jul 18 Javascript
vue项目中引入noVNC远程桌面的方法
Mar 05 Javascript
解决vue项目报错webpackJsonp is not defined问题
Mar 14 Javascript
vue.js实现只能输入数字的输入框
Oct 19 Javascript
使用javascript解析二维码的三种方式
Nov 11 Javascript
用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中取得image按钮传递的name值
2006/10/09 PHP
thinkPHP2.1自定义标签库的导入方法详解
2016/07/20 PHP
PHP实现的MD5结合RSA签名算法实例
2017/10/07 PHP
PHP实现微信退款的方法示例
2019/03/26 PHP
项目实践之javascript技巧
2007/12/06 Javascript
Javascript中的var_dump函数实现代码
2009/09/07 Javascript
javascript 弹出窗口中是否显示地址栏的实现代码
2011/04/14 Javascript
基于JQUERY的多级联动代码
2012/01/24 Javascript
JavaScript 实现简单的倒计时弹窗DEMO附图
2014/03/05 Javascript
JQuery为页面Dom元素绑定事件及解除绑定方法
2014/04/23 Javascript
javascript实现行拖动的方法
2015/05/27 Javascript
15个值得开发人员关注的jQuery开发技巧和心得总结【经典收藏】
2016/05/25 Javascript
jQuery绑定自定义事件的魔法升级版
2016/06/30 Javascript
JavaScript实现使用Canvas绘制图形的基本教程
2016/10/27 Javascript
JS刷新父窗口的几种方式小结(推荐)
2016/11/09 Javascript
BetterScroll 在移动端滚动场景的应用
2017/09/18 Javascript
vue+axios 前端实现登录拦截的两种方式(路由拦截、http拦截)
2018/10/24 Javascript
vant(ZanUi)结合async-validator实现表单验证的方法
2018/12/06 Javascript
JS中call()和apply()的功能及用法实例分析
2019/06/28 Javascript
基于js实现逐步显示文字输出代码实例
2020/04/02 Javascript
Vue中父子组件的值传递与方法传递
2020/09/28 Javascript
对vue生命周期的深入理解
2020/12/03 Vue.js
Python 命令行参数sys.argv
2008/09/06 Python
Python可变参数函数用法实例
2015/07/07 Python
详解python的webrtc库实现语音端点检测
2017/05/31 Python
Python实现可获取网易页面所有文本信息的网易网络爬虫功能示例
2018/01/15 Python
Django框架中间件(Middleware)用法实例分析
2019/05/24 Python
使用CSS3在触屏上为按钮实现激活效果
2013/09/27 HTML / CSS
前端面试必备之html5的新特性
2017/09/05 HTML / CSS
来自全球大都市的高级街头服饰:Pegador
2018/01/03 全球购物
澳大利亚婴儿礼品公司:The Baby Gift Company
2018/11/04 全球购物
匈牙利超级网上商店和优惠:Alza.hu
2019/12/17 全球购物
观看《永远的雷锋》心得体会
2014/03/12 职场文书
中秋节活动总结
2014/08/29 职场文书
个人查摆剖析材料
2014/10/16 职场文书
一封真诚的自荐信帮你赢得机会
2019/05/07 职场文书