以前用后台java拼接分页代码,不利于修改。找到一份velocity模板。

 <!-- 分页模板 -->
#macro(pager $url $pager)
<url class="page">
#set($FRONT_LEN = 3)
#set($BEHIND_LEN = 3)
#set($PAGER_LEN = 7)
#set($last = $!{pager.pageNumber} - 1)
#set($next = $!{pager.pageNumber} + 1)
<!--设置页码列表开始和结束 -->
<!--如果总页数<=展示长度 -->
#if($!{pager.totalPage} <= $!{PAGER_LEN})
#set($header = 1)
#set($ender = $!{pager.totalPage})
<!--如果总页数>展示长度 -->
#else
<!-- 当前页 < 展示长度-->
#if($!{pager.pageNumber} < $!{PAGER_LEN})
#set($header = 1)
#set($ender = $PAGER_LEN)
<!--当前页 >= 展示长度 && 定尾部,再定头部 -->
#else
#set($ender = $!{pager.pageNumber} + $!{BEHIND_LEN})
#if($!ender > $!{pager.totalPage})
#set($ender = $!{pager.totalPage})
#end
#set($header = $!ender - $!{PAGER_LEN})
#end
#end
<li #if($!{pager.pageNumber} == 1) class="disabled"#end>
<a href="$!{url}?page=$!last">上一页</a>
</li>
<!-- 页码列表 -->
#foreach($p in [$!{header}..$!{ender}])
<li #if($!{pager.pageNumber} == $!{p}) class="active" #end>
<a href="$!{url}?page=$!{p}">$!{p}</a>
</li>
#end
<li #if($!{pager.pageNumber} == $!{pager.totalPage}) class="disabled" #end>
<a href="$!{url}?page=$!next">下一页</a>
</li>
<li>
每页 $!{pager.pageSize} 条, 共 $!{pager.totalRow} 条, 共$!{pager.totalPage}页
<input type="text" placeholder="1" id="tzy">
<a href="javascript:var tem=document.getElementById('tzy').value;
var temhref='$!{url}?page=tem';
window.location.href=temhref;">
跳转
</a>
</li>
</url>
#end

velocity分页模板的更多相关文章

  1. 【Java EE 学习 57】【酒店会员管理系统之分页模板书写】

    分页一直是一个比较麻烦的问题,特别是在我做的这个系统中更是有大量的分页,为了应对该问题,特地写了一个模板以方便代码重用,该模板包括后台分页的模板.前端显示的模板两部分. 一.分页分析 分页需要三种类型 ...

  2. Oracle数据库的SQL分页模板

    在系统开发过程中,需要对数据进行查询,大部分情况下从数据库中查询的数据量比较大,在系统页面无法全部显示,而且查询全部的数据会影响系统的反应速度,需要对所查询的数据进行分页的查询操作,以此减轻系统的压力 ...

  3. smarty分页模板(用模板语法写分页)

    分页是一个我们经常要用到的.比较基本的小功能,你可以通过定义一个方法或类来对它进行封装.重用.而本文则是通过利用smarty独有的语法,以模版的方式进行封装,从而达到同样的目的. 下面开始具体实现步骤 ...

  4. 动动手,写个knockout的分页模板

    最近一个项目用ASP.NET + knockout开发,很多列表页面都带分页,于是就有了写一个公共的分页模板的想法. 先把template写好: <script type="text/ ...

  5. SQL Server分页模板

    SQL Server分页模板 WITH T AS ( SELECT ROW_NUMBER() OVER(ORDER BY AlbumId ) AS row_number, * FROM (SELECT ...

  6. ThinkPHP自定义分页模板

    TpPageHelper.php <?php namespace tool; use think\Paginator; class TpPageHelper extends Paginator ...

  7. velocity(vm)模板引擎基本语法

    for循环 #foreach($acc in $!{param.tools}) #set($count = $count + 1) <li custom-data="$!{acc.or ...

  8. js分页模板

    /** *参数说明: *currentPage:当前页数 *countPage:总页数 *changeMethod:执行java后台代码的js函数,即是改变分页数据的js函数 */ function  ...

  9. Jsp刷新分页模板,很全

      1.用来实现上一页下一页,我直接写到查询页面上 <%--page的分页--%> <style type="text/css"> a { color: # ...

随机推荐

  1. 多个div居中显示

    页面中有多个div时我们希望并排居中显示,可以通过在并排显示的div上一层再加一个div,设定宽度,然后让其居中显示达到需要的效果. 关键是要对外层div设定宽度. <!DOCTYPE html ...

  2. MySQL JDBC 出现多个 SHOW VARIABLES 语句。

    一次偶然的机会,show processlist 的时候,发现有个 Client 一直在执行  "mysql-connector-java-5.1.21 ( Revision: ${bzr. ...

  3. 译文---C#堆VS栈(Part Three)

    前言 在本系列的第一篇文章<C#堆栈对比(Part Two)>中,介绍了值类型和引用类型在参数传递时的不同,本文将讨论如何应用ICloneable接口实现去修复引在堆上的用变量所带来的问题 ...

  4. web前端工程师在移动互联网时代里的地位问题

    支付宝十周年推出了一个新产品:支付宝的十年账单,我也赶个时髦查看了一下我的支付宝十年账单,哎,感慨自己真是太屌丝了,不过这只是说明我使用淘宝少了,当我大规模网上购物时候,我很讨厌慢速的快递,所以我大部 ...

  5. 基础调试命令 - .dump/.dumpcap/.writemem/!runaway

    Windbg是windows平台上强大的调试器,它相对于其他常见的IDE集成的调试器有几个重要的优势, Windbg可以做内核态调试 Windbg可以脱离源代码进行调试 Windbg可以用来分析dum ...

  6. FusionCharts简单教程(三)-----如何自定义图表上的工具提示

    最近有蛮多人总是问我这个FusionCharts制表的问题,帮助他们解决之后,在昨晚发现以前整理的笔记中有这个简单教程,而且以前也发表了几篇这个博文,所以就将其全部上传上来供别人参考.如有不正确之处望 ...

  7. 像素图的实时光照 Lighting on Pixel Art

    去年有这样一个工具,We got one toolkit last year. 他有什么功能呢?What is its function? 让你画出各个方向的照明图 That you can draw ...

  8. webservice 之 WSDL的解析

    先看一个wsdl, <?xml version="1.0" encoding="UTF-8" standalone="no"?> ...

  9. MySQL的Grant命令[转]

    本文实例,运行于 MySQL 5.0 及以上版本. MySQL 赋予用户权限命令的简单格式可概括为: grant 权限 on 数据库对象 to 用户 一.grant 普通数据用户,查询.插入.更新.删 ...

  10. struts2学习笔记之九:struts2的命名空间

    struts2的命名空间适用于多人开发,根据不同模块命名不同的命名空间,方便开发和管理 struts2如果没有配置命名空间,默认命名空间为"/",Struts2中Action的完整 ...