MVC中的自定义标签分页控件,仅供大家学习!!
2024-09-03 22:56:35
public static HtmlString ShowPageNavigate(this HtmlHelper htmlHelper, int currentPage, int pageSize, int totalCount)
{
var redirectTo = htmlHelper.ViewContext.RequestContext.HttpContext.Request.Url.AbsolutePath; //获取请求的地址
pageSialPages = Math.Max((totalCount + pageSize - ) / pageSize, ); //总页数
var outpuze = pageSize == ? : pageSize;
var tott = new StringBuilder();
if (totalPages > )
{
//if (currentPage != 1)
{//处理首页连接
output.AppendFormat("<a class='pageLink' href='{0}?pageIndex=1&pageSize={1}'>首页</a> ", redirectTo, pageSize);
}
if (currentPage > )
{//处理上一页的连接
output.AppendFormat("<a class='pageLink' href='{0}?pageIndex={1}&pageSize={2}'>上一页</a> ", redirectTo, currentPage - , pageSize);
}
else
{
// output.Append("<span class='pageLink'>上一页</span>");
} output.Append(" ");
int currint = ;
for (int i = ; i <= ; i++)
{//一共最多显示10个页码,前面5个,后面5个
if ((currentPage + i - currint) >= && (currentPage + i - currint) <= totalPages)
{
if (currint == i)
{//当前页处理
//output.Append(string.Format("[{0}]", currentPage));
output.AppendFormat("<a class='cpb' href='{0}?pageIndex={1}&pageSize={2}'>{3}</a> ", redirectTo, currentPage, pageSize, currentPage);
}
else
{//一般页处理
output.AppendFormat("<a class='pageLink' href='{0}?pageIndex={1}&pageSize={2}'>{3}</a> ", redirectTo, currentPage + i - currint, pageSize, currentPage + i - currint);
}
}
output.Append(" ");
}
if (currentPage < totalPages)
{//处理下一页的链接
output.AppendFormat("<a class='pageLink' href='{0}?pageIndex={1}&pageSize={2}'>下一页</a> ", redirectTo, currentPage + , pageSize);
}
else
{
//output.Append("<span class='pageLink'>下一页</span>");
}
output.Append(" ");
if (currentPage != totalPages)
{
output.AppendFormat("<a class='pageLink' href='{0}?pageIndex={1}&pageSize={2}'>末页</a> ", redirectTo, totalPages, pageSize);
}
output.Append(" ");
}
output.AppendFormat("第{0}页 / 共{1}页", currentPage, totalPages);//这个统计加不加都行 return new HtmlString(output.ToString());
}
最新文章
- 启动了VSAN服务的主机不在vCenter集群中
- HTML5漂亮实用的电子书
- spring bean生命周期管理--转
- Codeforces Round #252 (Div. 2) B. Valera and Fruits
- liststack——链表栈(procedure)
- [Java Web]Struts2解决中文乱码问题
- An Data-Scientist Prepares 《数据科学家的自我修养》
- IE中使用ajaxSubmit上传文件弹出下载提示框
- javascript实现图片延迟加载方法汇总(三种方法)
- 对JS 的classList 简单记录
- [物理学与PDEs]第2章习题12 严格凸性的转换
- HashMap与LinkedHashMap的区别
- 从高德采集最新的省市区三级坐标和行政区域边界,用js在浏览器中运行
- Python内建函数-callable
- npm install 报错(npm ERR! errno -4048,Error: EPERM: operation not permitted,)解决方法
- Sitecore 8.1 - 特性和功能
- JS 实现 jQuery的$(function(){});
- Mybatis之使用注解开发CRUD
- WPF中自定义路由事件
- mysql备份的4种方式