一、freemarker中list循环使用非常频繁,下面介绍lfreemarker中list简单的用法

  1、在freemarker中遍历list数组使用list指令:<#list sequence as item>...</#list>;

  其中sequence为集合(controller)的表达式,item是循环变量名(别名),不可是表达式;

  在遍历sequence的时候会将sequence中的变量或者对象放到item中,后面使用时只需用item即可;

  例如:<#list libraryVOs as libraryVO>

  注: libraryVOs集合为标签集合,GroupDTO为标签组

  libraryVOs为sequence表达式,libraryVO为item变量;libraryVOS中有多个GroupDTO对象,在遍历时会将GroupDTO存放到libraryVO中。如果取GroupDTO中的名称

  使用${libraryVO.applyName};

  2、item_index:当前迭代项在所有迭代项中的位置,是数字值。

  3、freemarker判断<#if (x>y)></#if> 注:要使用括号括起来

  

<ul>
<#list libraryVOs as libraryVO>
<li>
<span class="content-l-title">${libraryVO.groupDto.applyName}(${libraryVO.count}):</span>
<ul class="content-l-content">
<#list libraryVO.labelDto as labelLibrary>
<#if (labelLibrary_index <= 3)>
<li>
<span class="second-title">${labelLibrary.applyName}:</span>
<span class='second-title hide' id='labelId${labelLibrary.autoId}'>${labelLibrary.applyName}</span>
<label for="checkbox10" class="checkbox${labelLibrary.autoId}0" onclick="getLabelCustom(${labelLibrary.autoId})">
<input type="radio" id="checkbox0${labelLibrary.autoId}" value="1" name="tag1">
<b><img src="${resRoot}/css/images/xianze.png" alt=""></b>
自定义
</label>
<label for="checkbox11" class="checkbox${labelLibrary.autoId}1" onclick="getLabelAll(${labelLibrary.autoId})">
<input type="radio" id="checkbox1${labelLibrary.autoId}" value="0" name="tag1">
<b><img src="${resRoot}/css/images/xianze.png" alt=""></b>
不限
</label>
<input id="tagSel${labelLibrary.autoId}" name="tagSel${labelLibrary.autoId}" onclick="showTag(${labelLibrary.autoId}); return false;" class="tag-item ${labelLibrary.autoId} hide" type="text" readonly value="">
<input id="tagSelId${labelLibrary.autoId}" name="tagSelId${labelLibrary.autoId}" type="hidden" value="" style="width:120px;">
<div id="tagContent${labelLibrary.autoId}" class="tagContent${labelLibrary.autoId}" style="position: absolute; left: 64px; display:none;width:160px;height:200px;overflow-y:scroll;overflow-x:auto;z-index:5555;background: #fff;">
<ul id="tagDemo${labelLibrary.autoId}" class="ztree"></ul>
</div>
</li>
</#if> <#if (labelLibrary_index > 3)>
<li class="list hide">
<span class="second-title">${labelLibrary.applyName}:</span>
<span class='second-title hide' id='labelId${labelLibrary.autoId}'>${labelLibrary.applyName}</span>
<label for="checkbox10" class="checkbox${labelLibrary.autoId}0" onclick="getLabelCustom(${labelLibrary.autoId})">
<input type="radio" id="checkbox0${labelLibrary.autoId}" value="1" name="tag1">
<b><img src="${resRoot}/css/images/xianze.png" alt=""></b>
自定义
</label>
<label for="checkbox11" class="checkbox${labelLibrary.autoId}1" onclick="getLabelAll(${labelLibrary.autoId})">
<input type="radio" id="checkbox1${labelLibrary.autoId}" value="0" name="tag1">
<b><img src="${resRoot}/css/images/xianze.png" alt=""></b>
不限
</label>
<input id="tagSel${labelLibrary.autoId}" name="tagSel${labelLibrary.autoId}" onclick="showTag(${labelLibrary.autoId}); return false;" class="tag-item ${labelLibrary.autoId} hide" type="text" readonly value="">
<input id="tagSelId${labelLibrary.autoId}" name="tagSelId" type="hidden" value="" style="width:120px;">
<div id="tagContent${labelLibrary.autoId}" class="tagContent${labelLibrary.autoId}" style="position: absolute; left: 64px; display:none;width:160px;height:200px;overflow-y:scroll;overflow-x:auto;z-index:5555;background: #fff;">
<ul id="tagDemo${labelLibrary.autoId}" class="ztree"></ul>
</div>
</li>
</#if>
</#list>
<#if (libraryVO.labelDto?size > 3)>
<li>
<span class="l-more">更多<i class="more-icon"></i></span>
<span class="l-close hide">收起<i class="close-icon"></i></span>
</li>
</#if>
</ul>
</li>
</#list>
</ul>

  

  

  

 

freemarker循环、下标及判断的更多相关文章

  1. C#开发Unity游戏教程循环遍历做出判断及Unity游戏示例

    C#开发Unity游戏教程循环遍历做出判断及Unity游戏示例 Unity中循环遍历每个数据,并做出判断 很多时候,游戏在玩家做出判断以后,游戏程序会遍历玩家身上大量的所需数据,然后做出判断,即首先判 ...

  2. python Django教程 之模板渲染、循环、条件判断、常用的标签、过滤器

    python3.5 manage.py runserver python Django教程 之模板渲染.循环.条件判断.常用的标签.过滤器 一.Django模板渲染模板 1. 创建一个 zqxt_tm ...

  3. Java 控制语句:循环、条件判断

    基础很重要,基础很重要,基础很重要.重要的事情说三遍,. 程序设计中的控制语句主要有三种:顺序.分支和循环.我们每天写的代码,除了业务相关,里面会包含大量的控制语句.但是控制语句的基本使用,是否有些坑 ...

  4. 脚本开头,python预编译,控制台输入输出,for,while循环,分支判断,break,continue

    3. name = input("name:")与2.x中raw_input一回事, 注意接收的变量全部默认为字符串类型. 从控制台接收用户输入,而密文输入import getpa ...

  5. for循环里面的判断条件

    先看下面这段代码,你很容易猜到结果 for(i=0;i<10;i++){ console.log(i); // 结果是打印出 1,2,3,4,5,6,7,8,9 } 再看一下这款代码,也许很容易 ...

  6. Swift流程控制之循环语句和判断语句详解

    Swift提供了所有c类语言的控制流结构.包括for和while循环来执行一个任务多次:if和switch语句来执行确定的条件下不同的分支的代码:break和continue关键字能将运行流程转到你代 ...

  7. Ansible系列(六):循环和条件判断

    本文目录:1. 循环 1.1 with_items迭代列表 1.2 with_dict迭代字典项 1.3 with_fileglob迭代文件 1.4 with_lines迭代行 1.5 with_ne ...

  8. PHP和JS在循环、条件判断中的不同之处

    一.条件判断: php中算  false 的情况 1. boolean:false 2. 整形:0 3.浮点型:0 4.字符串:"" "0"(其他都对) 5.空 ...

  9. 不使用循环或递归判断一个数是否为3的幂(leetcode 326)

    326. Power of ThreeGiven an integer, write a function to determine if it is a power of three. Follow ...

随机推荐

  1. spring (反射+代理+DI+AOP)

    spring  https://baijiahao.baidu.com/s?id=1620606848227713760&wfr=spider&for=pc 反射 https://bl ...

  2. opencv常见示例

    1.批量转换灰度图并保存 #include <iostream> #include <opencv2/opencv.hpp> #include <string> u ...

  3. PHPStorm_CI3框架代码提示

    链接:https://pan.baidu.com/s/12lpkjRXod5yZINqcF6S6og  密码:t6if

  4. ubuntu16上启用外部管理端口

    docker启动外部访问端口在Ubuntu上: [root@maintance systemd] $cd /lib/systemd/system/ [root@maintance system] $c ...

  5. Javascript-基本类型

    数字 JavaScript不区分整数和浮点数,所有数字都用浮点数表示. 能够表示最大值是 -253 ~ 253,包含边界.超过范围的数无法保证低位数字的精度. JavaScript能直接识别十进制的整 ...

  6. 002-创建型-05-原型模式(Protype)

    一.概述 指原型实例指定创建对象的种类,并通过克隆这些原型创建新的对象 原型模式就是让类实现Cloneable接口,达到克隆原型类的方式. 1.1.适用场景 1.在创建对象的时候,我们不只是希望被创建 ...

  7. osg 3ds模型加载与操作

    QString item1 = QString::fromStdString(groupParam->getChild(k)->getName()); QStandardItem* ite ...

  8. ubuntu server 18.04 单机安装openstack

    https://ubuntu.com/openstack/install#workstation-deployment sudo snap install microstack --classic - ...

  9. python命令行参数解析OptionParser类用法实例

    python命令行参数解析OptionParser类用法实例 本文实例讲述了python命令行参数解析OptionParser类的用法,分享给大家供大家参考. 具体代码如下:     from opt ...

  10. Direct2D 学习笔记(1)概述

    Direct2D 应用程序接口概述 资源网站 https://docs.microsoft.com/en-us/windows/win32/Direct2D/the-direct2d-api 主要用到 ...