<td>
<c:forEach items="${cityMap}" var="entry">
<hr>
<input type="checkbox" class="chooseAll"><strong>${entry.key}</strong><br>
<hr>
<c:if test="${entry.key ne '澳门特别行政区'}">
<c:if test="${entry.key ne '香港特别行政区'}">
<c:if test="${entry.key ne '北京市'}">
<c:if test="${entry.key ne '天津市'}">
<c:if test="${entry.key ne '重庆市'}">
<c:if test="${entry.key ne '上海市'}">
<c:forEach items="${entry.value}" var="str">
<input class="douc" type="checkbox" value="${str}" name="area">${str}
</c:forEach>
</c:if>
</c:if>
</c:if>
</c:if>
</c:if>
</c:if>
<br>
</c:forEach>
</td>

本想都写在一个if里,如

2018-2-2 17:12:30

今天又改需求,因业务逻辑对城市部分进行调整,发现下面这种方式也可以。。。之前用这种方式出问题可能是由于某种不可抗力,mmp

  <c:if test="${entry.key ne '澳门特别行政区'
||entry.key ne '香港特别行政区' ....
}">

//事实证明这样写页面会出问题

另补充一下,EL中的三目运算符使用

<span style="font-size: 8px">${item.sex==1?"男":"女"}</span><br>

继续补充,因业务需要对el获取中的值判断是否包含某个字符串,网上搜了下,现整理一下

页面中声明:<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

函数

描述

fn:contains(string, substring)

如果参数string中包含参数substring,返回true

fn:containsIgnoreCase(string, substring)

如果参数string中包含参数substring(忽略大小写),返回true

fn:endsWith(string, suffix)

如果参数 string 以参数suffix结尾,返回true

fn:escapeXml(string)

将有特殊意义的XML (和HTML)转换为对应的XML character entity code,并返回

fn:indexOf(string, substring)

返回参数substring在参数string中第一次出现的位置

fn:join(array, separator)

将一个给定的数组array用给定的间隔符separator串在一起,组成一个新的字符串并返回。

fn:length(item)

返回参数item中包含元素的数量。参数Item类型是数组、collection或者String。如果是String类型,返回值是String中的字符数。

fn:replace(string, before, after)

返回一个String对象。用参数after字符串替换参数string中所有出现参数before字符串的地方,并返回替换后的结果

fn:split(string, separator)

返回一个数组,以参数separator 为分割符分割参数string,分割后的每一部分就是数组的一个元素

fn:startsWith(string, prefix)

如果参数string以参数prefix开头,返回true

fn:substring(string, begin, end)

返回参数string部分字符串, 从参数begin开始到参数end位置,包括end位置的字符

fn:substringAfter(string, substring)

返回参数substring在参数string中后面的那一部分字符串

fn:substringBefore(string, substring)

返回参数substring在参数string中前面的那一部分字符串

fn:toLowerCase(string)

将参数string所有的字符变为小写,并将其返回

fn:toUpperCase(string)

将参数string所有的字符变为大写,并将其返回

fn:trim(string)

去除参数string 首尾的空格,并将其返回

页面用法示例:

      <c:choose>
<c:when test="${fn:contains(item.content,'你要判断的值')}">
<img src="${item.content}" width="100px" height="100px"><br>
</c:when>
<c:otherwise>
<div width="100px" height="100px">
<span>${item.content}</span>
</div>
</c:otherwise>
</c:choose>

EL表达式多条件判断方式的更多相关文章

  1. el表达式 多条件判断

      el表达式 多条件判断 CreationTime--2018年9月13日08点59分 Author:Marydon 1.情景展示 ACCESS_ID == 'APP1039' 且 CARDTYPE ...

  2. EL表达式多条件判断

    ${bndExport.containerList[0].kind eq '01' || bndExport.containerList[0].kind eq '02'}

  3. puppet(3) 变量、数据类型、表达式、条件判断语句-if、case、selector、unless

    puppet(4) 变量.数据类型.表达式.条件判断语句-if.case.selector语句 puppet变量: 1.名称必须以$开头:赋值使用=,支持追加赋值+=: 2.每个变量都有两种引用格式: ...

  4. EL表达式多条件或判断用法

    简单记录一EL表达式的判断用法 <c:if test="${(order.status == '06'&& order.type=='02') || (order.st ...

  5. EL表达式获取数据的方式

    <%@page import="cn.jiemoxiaodi.domain.Person"%> <%@ page language="java" ...

  6. 在页面的el表达式是如何判断null的

    <c:if test="${not empty message}"> <div id="message" class="alert ...

  7. 拉姆达表达式 追加 条件判断 Expression<Func<T, bool>>

    public static class PredicateBuilder { /// <summary> /// 机关函数应用True时:单个AND有效,多个AND有效:单个OR无效,多个 ...

  8. EL表达式概述

    E L(Expression Language) 目的:为了使JSP写起来更加简单.表达式语言的灵感来自于 ECMAScript 和 XPath 表达式语言,它提供了在 JSP 中简化表达式的方法. ...

  9. EL表达式从数组 Map List集合取值

    Jstl是sun的标准taglib库,Jstl是标签库和el语言的结合. el 表达式的隐含对象pageScope,requestScope,sessionScope,applicationScope ...

随机推荐

  1. Javascript Array 非常用方法解析

    在ECMAScript5的Array中已经有了Array.prototype.forEach,Array.prototype.filter,Array.prototype.map等方法 1. map ...

  2. webkit

    HTML, 从HTML文档的开始到结束排列: <meta name="viewport" content="width=device-width, initial- ...

  3. OKMX6Q LTIB编译

    因为在16.04上编译有许多解决不了的错误,最后还是在飞凌的12.04虚拟机上编译的. 按照手册<OKMX6X-S2-LTIB编译手册-V1.1-2016-08-18>进行到第8步时,出现 ...

  4. 解析MYsql explain执行计划extra列输出

    EXPLAIN Extra 列信息: explain Extra列输出包含了关于mysql如何解决query的额外信息,特别是出现Using filesort 和 using temporary时,应 ...

  5. ora-01190和ora-01110的解决方法

    SQLPLUS>ALTER DATABASE DATAFILE 2 ONLINE; ALTER DATABASE DATAFILE 2 ONLINE * ERROR 位于第 1 行: ORA-0 ...

  6. javaScript之jQuery

    一.jQuery简介   jQuery是一个快速.简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架).jQuery设计的宗旨 ...

  7. Linuxc - define 与 typedef的区别

    预处理就是讲一些头文件展开. 预处理还会将使用到宏定义的值替换为真正的值.宏只是单纯的字符串的替换. #define 宏定义 眼里没有语法,不用分号结尾. typedef 定义别名,是有语法的,要用分 ...

  8. Javascript学习--时间

    digit = [ [ [0,0,1,1,1,0,0], [0,1,1,0,1,1,0], [1,1,0,0,0,1,1], [1,1,0,0,0,1,1], [1,1,0,0,0,1,1], [1, ...

  9. python 闭包初识

    def func_100(val): passline = 60 if val >= passline: print('pass') else: print('failed') def func ...

  10. Azure VM 防止被入侵

    伴随着开源Linux系统的逐渐盛行,在机器上线之前配置好安全策略至关重要,分享几点有关Azure Linux VM机器的安全建议如下: 1.禁止root账号登录虚拟机,并增加密码的复杂度(大小写字母, ...