httl 分页 (page) 模板

来源:互联网 发布:激光点云数据处理软件 编辑:程序博客网 时间:2024/05/24 06:53

httl分页(page)模板

HTTL(Hyper-Text Template Language)是一个高性能的开源JAVA模板引擎,适用于动态HTML页面输出,可替代JSP页面,指令和Velocity相似。
官网地址请点击->httl官网

demo已经在git上,地址:git码云 github地址
以下是我写的一个分页模板效果图:
这里写图片描述

分页模板pagination.httl代码如下:

##用法参照 extendsDemo.httl   ##分页模板。。<!--#macro(pagination(Integer pageCurrent, Integer totalPage, Integer rowSum,Integer pageRows,String actionUrl))--><div class="ui-page clearfix">  <!--#if( (totalPage <= 0) || (pageCurrent > totalPage))-->        <!--#set(Boolean needPagination = false)-->    <!--#else-->        <!--#set(Boolean needPagination = true)-->        <!--#set(Integer startPage = pageCurrent - 4)-->        <!--#if(startPage < 1)-->            <!--#set(Integer startPage = 1)-->        <!--#end-->        <!--#set(Integer endPage = pageCurrent + 4)-->        <!--#if(endPage > totalPage)-->            <!--#set(Integer endPage = totalPage)-->        <!--#end-->    <!--#end--><b class="ui-page-skip"> 共${rowSum}条记录,${totalPage}页,每页 <select id="pageRows" class="ui-page-skipTo" onchange="toPage(1,'${actionUrl}')">    <!-- #if(pageRows==25)-->        <option value="10" >10</option>        <option value="25" selected="selected">25</option>        <option value="50">50</option>        <option value="100">100</option>    <!-- #else(pageRows==50)-->        <option value="10" >10</option>        <option value="25" >25</option>        <option value="50" selected="selected">50</option>        <option value="100">100</option>    <!-- #else(pageRows==100)-->        <option value="10" >10</option>        <option value="25" >25</option>        <option value="50">50</option>        <option value="100" selected="selected">100</option>    <!--#else -->        <option value="10" selected="selected">10</option>        <option value="25">25</option>        <option value="50">50</option>        <option value="100">100</option>    <!-- #end --> </select></b><div class="ui-page-wrap">    <!--#if(needPagination)-->    <b class="ui-page-num">        <!--#if(pageCurrent <= 8)-->            <!--##set(Integer startPage = 1)-->        <!--#end-->        <!--#if((totalPage - pageCurrent) < 8)-->            <!--#set(Integer endPage = totalPage)-->        <!--#end-->        <!--#if(pageCurrent == 1)-->             <b class="ui-page-prev"> &lt; </b>        <!--#else-->            <a href="#fakelink" class="ui-page-prev" onclick="toPage(${pageCurrent - 1},'${actionUrl}')">  &lt; </a>        <!--#end-->        <!--#if(pageCurrent > 8)-->            <a href="#fakelink" onclick="toPage(1,'${actionUrl}')">1</a>            <a href="#fakelink" onclick="toPage(2,'${actionUrl}')">2</a>            <a href="#fakelink"></a>        <!--#end-->        <!--#for(i : startPage..endPage)-->            <!--#if(pageCurrent == i)-->                <b class="ui-page-prev" >${i}</b>            <!--#else-->                <a href="#fakelink" onclick="toPage(${i},'${actionUrl}')">${i}</a>            <!--#end-->        <!--#end-->        <!--#if((totalPage - pageCurrent) >= 8)-->            <a href="#fakelink"></a>            <a href="#fakelink" onclick="toPage(${totalPage - 1},'${actionUrl}')">${totalPage - 1}</a>            <a href="#fakelink" onclick="toPage(${totalPage},'${actionUrl}')">${totalPage}</a>        <!--#end-->        <!--#if(pageCurrent == totalPage)-->            <a href="#fakelink" class="ui-page-prev"> &gt; </a>        <!--#else-->            <a href="#fakelink" class="ui-page-prev" onclick="toPage(${pageCurrent + 1},'${actionUrl}')"> &gt;</a>        <!--#end-->     </b>    <!--#end-->     <!-- /if --></div></div> <!-- /pagination --><script type="text/javascript" src="${request.contextPath}/script/jquery/jquery-1.9.1.min.js"></script><script type="text/javascript">//分页 请求    function toPage(pageCur,actionUrl)    {        $("#p_pageRows").val($("#pageRows").val());        $("#p_pageCurrent").val(pageCur);        $('#search_form').attr('action', actionUrl);        $("#search_form").submit();        }</script><!--#end-->

httl.properties 配置文件中需要加上配置:

import.macros+=/demo/view/common/pagination.httl 

页面上引入分页时:

$!{pagination(page.pageCurrent,page.total,page.rowSum,page.pageRows,"query")}

详细用法请参照 demo里面的 extendsDemo.httl。
demo已经在git上,git码云地址 , github地址

0 0
原创粉丝点击