/// <summary>
/// 分页页脚
/// </summary>
/// <param name="currentPageIndex">当前页</param>
/// <param name="pageSize">记录条数</param>
/// <param name="total">记录总数</param>
/// <param name="cssName">css样式名称</param>
/// <returns></returns>
private string GetPageFoot(int currentPageIndex, int pageSize, int total, string cssName)
{
currentPageIndex = currentPageIndex <= ? : currentPageIndex;
pageSize = pageSize <= ? : pageSize;
string options = string.Empty;
int pageCount = ;//总页数
int pageVisibleCount = ; // 显示数量
if (total % pageSize == )
{
pageCount = total / pageSize;
}
else
{
pageCount = total / pageSize + ;
}
//如果是整除的话,退后一页
StringBuilder sb = new StringBuilder();
sb.AppendFormat("<div class=\"page_left\">一页显示<select id=\"pageSize\" name=\"pageSize\" onchange =\"SC.Page.ChangeSize();\">{0}</select>&nbsp;条&nbsp;&nbsp;&nbsp;总共{1}条</div>", SetOption(pageSize), total);
sb.AppendFormat("<div class=\"page_right\">跳转到第<input type=\"text\" id=\"pageIndex\" name=\"pageIndex\" value=\"{0}\" />页<a href=\"#\" class=\"easyui-linkbutton\" plain=\"true\" iconCls=\"icon-redo\" onclick=\"SC.Page.GotoPage();\">Go</a>共<span id=\"pageCount\">" + pageCount + "</span>&nbsp;页</div><input type=\"hidden\" id=\"isSearch\" name=\"isSearch\" value=\"1\" />", currentPageIndex); sb.Append("<div class='" + cssName + "'>");// sbrosus分页样式,需要自己添加哇 if (currentPageIndex == || total < )
{
sb.Append("<span ><a href='javascript:void(0)'>首页</a></span>");
sb.Append("<span ><a href='javascript:void(0)'>上一页</a></span>");
}
else
{
sb.Append("<span><a onclick=\"SC.Page.GetPage(1)\">首页</a></span>");
sb.Append("<span><a onclick=\"SC.Page.GetPage(" + (currentPageIndex - ).ToString() + ")\">上一页</a></span>");
}
int i = ;
int k = pageVisibleCount > pageCount ? pageCount : pageVisibleCount;
if (currentPageIndex > pageVisibleCount)
{
i = currentPageIndex / pageVisibleCount * pageVisibleCount;
k = (i + pageVisibleCount) > pageCount ? pageCount : (i + pageVisibleCount);
}
for (; i <= k; i++)//k*10防止k为负数
{
if (i == currentPageIndex)
{
sb.AppendFormat("<span class='current' ><a href='javascript:void(0)'>{0}</a></span>&nbsp;", i);
}
else
{
sb.AppendFormat("<span><a onclick=\"SC.Page.GetPage(" + i + ")\" >{0}</a></span>&nbsp;", i);
}
}
if (currentPageIndex == pageCount || total < )
{
sb.Append("<span ><a href='javascript:void(0)'>下一页</a></span>");
sb.Append("<span ><a href='javascript:void(0)'>尾页</a></span>");
}
else
{
sb.Append("<span><a onclick=\"SC.Page.GetPage(" + (currentPageIndex + ).ToString() + ")\">下一页</a></span>");
sb.Append("<span><a onclick=\"SC.Page.GetPage(" + pageCount + ")\">尾页</a></span></div>");
}
return sb.ToString();
}

MVC_分页方法调用的更多相关文章

  1. SharePoint2013 SharePoint-Hosted 模式 分页方法

    /**分页js插件 var ListPager = new listPaging(); 先调用start方法加载上下文 然后调用dataLoad方法查询第一页数据 需要设置几个属性值 ListPage ...

  2. Oracle 分页方法研究

    1.Oracle 中的三大分页方法 1.1.通过分析函数分页 1.2.通过 ROWNUM 分页 1.3.通过 ROWID 分页 2.Oracle 分页解决方案浅析 2.1.纯后端代码完成分页 2.2. ...

  3. Laravel 中通过自定义分页器分页方法实现伪静态分页链接以利于 SEO

    我们知道,Laravel 自带的分页器方法包含 simplePaginate 和 paginate 方法,一个返回不带页码的分页链接,另一个返回带页码的分页链接,但是这两种分页链接页码都是以带问号的动 ...

  4. 在 Laravel 中通过自定义分页器分页方法实现伪静态分页链接以利于 SEO

    我们知道,Laravel 自带的分页器方法包含 simplePaginate 和 paginate 方法,一个返回不带页码的分页链接,另一个返回带页码的分页链接,但是这两种分页链接页码都是以带问号的动 ...

  5. 用CIL写程序:从“call vs callvirt”看方法调用

    前文回顾:<用CIL写程序系列> 前言: 最近的时间都奉献给了加班,距离上一篇文章也有半个多月了.不过在上一篇文章<用CIL写程序:定义一个叫“慕容小匹夫”的类>中,匹夫和各位 ...

  6. 图解JVM执行引擎之方法调用

    一.方法调用 方法调用不同于方法执行,方法调用阶段的唯一任务就是确定被调用方法的版本(即调用哪一个方法),暂时还不涉及方法内部的具体运行过程.Class文件的编译过程中不包括传统编译器中的连接步骤,一 ...

  7. Struts2学习笔记 - Action篇<动态方法调用>

    有三种方法可以使一个Action处理多个请求 动态方法调用DMI 定义逻辑Acton 在配置文件中使用通配符 这里就说一下Dynamic Method nvocation ,动态方法调用,什么是动态方 ...

  8. Atitit. 构造ast 语法树的总结attilax oao 1. Ast结构树形12. ast view (自是个160k的jar )22.1. 多条语句ast结构22.2. 变量定义 int b,c; 的ast结构22.3. 方法调用meth1(a=1,b=2,c=3);  的ast结构23. 误解的问题33.1. 语法书子能是个二叉树,实际上多叉树越好..33.2. 非要不个ast放到个s

    Atitit. 构造ast 语法树的总结attilax oao 1. Ast结构树形1 2. ast view (自是个160k的jar )2 2.1. 多条语句ast结构2 2.2. 变量定义 in ...

  9. 第三章Struts2 Action中动态方法调用、通配符的使用

    01.Struts 2基本结构 使用Struts2框架实现用登录的功能,使用struts2标签和ognl表达式简化了试图的开发,并且利用struts2提供的特性对输入的数据进行验证,以及访问Servl ...

随机推荐

  1. Base64简单原理

    Base64要求把每三个8bit的字节转换为四个6bit的字节(即3*8 = 4*6 = 24) 1.例如我们有一个中文字符“中国(gb2312)”,转为十进制为:中-->54992,国--&g ...

  2. HDP Hive StorageHandler 下推优化的坑

    关键词:hdp , hive , StorageHandler 了解Hive StorageHandler的同学都知道,StorageHandler作为Hive适配不同存储的拓展类,同时肩负着Hive ...

  3. JS DOM事件学习

    DOM查找方法: document.getElementByID("id") document.getElementsByTagName("tag") 返回一个 ...

  4. 【高并发架构】Redis缓存高并发之-主从架构

    Redis主从架构 到目前为止,Redis Cluster 能实现很好的性能,但如果只是缓存几个G的数据,那么单机Redis就足够了,但缓存主要用来读的,单机的QPS有一定的极限,一两万QPS一台应该 ...

  5. linux操作命令之压缩命令

    常用的压缩格式:    .zip     .gz     .bz2 一..zip格式压缩 zip 压缩文件名 源文件 压缩文件 zip -r 压缩文件名 源目录 压缩目录 解压缩 unzip 压缩文件 ...

  6. Rewrite JSON project with Fetch

    上传 JSON 数据 使用fetch()来发布json编码的数据. var url = 'https://example.com/profile'; var data = {username: 'ex ...

  7. 解决 Visual Studio 点击添加引用无反应的问题

    如遇到vs2010 点击添加引用无反应,主要是因为windows系统推送的更新问题,把windows系统推送的更新都更新一遍就好了. 如果已经安装VS后 Windows系统推荐的更新.360推荐的安全 ...

  8. Java安装以及环境变量配置

    1. 2. 3. 4. 5. class HelloWorld{ public static void main(String args[]){ System.out.print("Hell ...

  9. 【安富莱】【RL-TCPnet网络教程】第8章 RL-TCPnet网络协议栈移植(RTX)

    第8章        RL-TCPnet网络协议栈移植(RTX) 本章教程为大家讲解RL-TCPnet网络协议栈的RTX操作系统移植方式,学习了第6章讲解的底层驱动接口函数之后,移植就比较容易了,主要 ...

  10. [Swift]LeetCode44. 通配符匹配 | Wildcard Matching

    Given an input string (s) and a pattern (p), implement wildcard pattern matching with support for '? ...