服务器之家

服务器之家 > 正文

Java web velocity分页宏示例

时间:2019-11-16 14:04     来源/作者:java教程网

代码如下:


#macro(pager $url $pager)
<ul class="pagination">
 #set($FRONT_LEN = 4)
 #set($BEHIND_LEN = 5)
 #set($PAGER_LEN = 10)
 #set($PAGER_CENTER = $!{pager.pageNum} - $!{BEHIND_LEN})
 <li #if($!{pager.currentPage} == 1) class="disabled"#end>
  <a href="$!{url}?page=1">«</a>
 </li>
 #if($!{pager.pageNum} <= $!{PAGER_LEN})
  #foreach($p in [1..$!{pager.pageNum}])
   <li #if($!{pager.currentPage} == $!{p}) class="active" #end>
    <a href="$!{url}?page=$!{p}">$!{p}</a>
   </li>
  #end
 #elseif($!{pager.pageNum} > $!{PAGER_LEN})
  #if($!{pager.currentPage} <= $!{FRONT_LEN})
   #foreach($p in [1..10])
    <li #if($!{pager.currentPage} == $!{p}) class="active" #end>
     <a href="$!{url}?page=$!{p}">$!{p}</a>
    </li>
   #end
  #elseif($!{pager.currentPage} < $!{PAGER_CENTER})
   #set($header = $!{pager.currentPage} - $!{FRONT_LEN})
   #set($ender = $!{pager.currentPage} + $!{BEHIND_LEN})
   #foreach($p in [$!{header}..$!{ender}])
    <li #if($!{pager.currentPage} == $!{p}) class="active" #end>
     <a href="$!{url}?page=$!{p}">$!{p}</a>
    </li>
   #end
  #else
   #set($begin = $!{pager.pageNum} - $!{FRONT_LEN} - $!{BEHIND_LEN})
   #foreach($p in [$!{begin}..$!{pager.pageNum}])
    <li #if($!{pager.currentPage} == $!{p}) class="active" #end>
     <a href="$!{url}?page=$!{p}">$!{p}</a>
    </li>
   #end
  #end
 #end
 <li #if($!{pager.currentPage} == $!{pager.pageNum}) class="disabled"#end>
  <a href="$!{url}?page=$!{pager.pageNum}">»</a>
 </li>
</ul>
#end

标签:

相关文章

热门资讯

玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
配置IIS网站web服务器的安全策略配置解决方案
配置IIS网站web服务器的安全策略配置解决方案 2019-05-23
Nginx服务器究竟是怎么执行PHP项目
Nginx服务器究竟是怎么执行PHP项目 2019-05-24
运维必须知道的关于云服务器的十个问题
运维必须知道的关于云服务器的十个问题 2019-05-24
返回顶部