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

所属分类: 网络编程 / JavaScript 阅读数: 453
收藏 0 赞 0 分享
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 += "...&nbsp;";
if (_CurrentPageSize == curPage) {
strPage += "&nbsp;&nbsp; <a href='#' style='font-size:14px;color:red'>" + curPage + "</a>";
}
else {
strPage += "&nbsp;&nbsp;<a href=\"#\" style='font-size:14px' onclick=\"" + _FunName + "(" + curPage + ");\">" + curPage + "</a>";
}
if (curPage == maxSize && _MaxPageSize - _CurrentPageSize - 1 > size) {
strPage += "...&nbsp;";
}
strResult += strPage;
}
}
strResult += "";
if (_IsUpDown) {
if (_CurrentPageSize == 1)
strResult = "<a href='#' >上一页</a>" + strResult;
else
strResult = "&nbsp;&nbsp; <a href=\"#\" onclick=\"" + _FunName + "(" + (_CurrentPageSize - 1) + ");\">上一页</a>" + strResult;
if (_CurrentPageSize == _MaxPageSize) {
strResult = strResult + "&nbsp;&nbsp;<a>下一页</a></ul>";
}
else {
strResult = strResult + "&nbsp;&nbsp; <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;">
&nbsp;&nbsp;&nbsp;&nbsp;<%#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
更多精彩内容其他人还在看

jQuery LigerUI 使用教程表格篇(1)

ligerGrid是ligerui系列插件的核心控件,用户可以快速地创建一个美观,而且功能强大的表格,支持排序、分页、多表头、固定列等等
收藏 0 赞 0 分享

JavaScript中常用的运算符小结

JavaScript中常用的运算符小结,需要的朋友可以参考下。
收藏 0 赞 0 分享

深入理解JavaScript系列(13) This? Yes,this!

在这篇文章里,我们将讨论跟执行上下文直接相关的更多细节。讨论的主题就是this关键字。实践证明,这个主题很难,在不同执行上下文中this的确定经常会发生问题
收藏 0 赞 0 分享

javascript (用setTimeout而非setInterval)

javascript (用setTimeout而非setInterval)如果用setInterval 可能出现 下次调用会在前一次调用前调用
收藏 0 赞 0 分享

JavaScript中两个感叹号的作用说明

用两个感叹号的作用就在于,如果明确设置了o中flag的值(非null/undefined/0""/等值),自然test就会取跟o.flag一样的值;如果没有设置,test就会默认为false,而不是null或undefined
收藏 0 赞 0 分享

javascript写的简单的计算器,内容很多,方法实用,推荐

最近用javascript写了一个简单的计算器,自己测试感觉还好,代码都给了注释,非常不错,推荐大家学习。
收藏 0 赞 0 分享

js的表单操作 简单计算器

javascript写的简单的加减乘除计算器,里面涉及到一些方法还是很实用的哦,新手不要错过
收藏 0 赞 0 分享

Jquery中删除元素的实现代码

empty用来删除指定元素的子元素,remove用来删除元素,或者设定细化条件执行删除
收藏 0 赞 0 分享

javaScript 利用闭包模拟对象的私有属性

JavaScript缺少块级作用域,没有private修饰符,但它具有函数作用域。作用域的好处是内部函数可以访问它们的外部函数的参数和变量(除了this和argument
收藏 0 赞 0 分享

为JavaScript类型增加方法的实现代码(增加功能)

大家在js开发过程中有些功能已经满足不了我们的需求,或没有我们需要的功能,那么我们就可以自己扩展下,个性化js
收藏 0 赞 0 分享
查看更多