EL表达式多条件判断方式
<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表达式多条件判断方式的更多相关文章
- el表达式 多条件判断
el表达式 多条件判断 CreationTime--2018年9月13日08点59分 Author:Marydon 1.情景展示 ACCESS_ID == 'APP1039' 且 CARDTYPE ...
- EL表达式多条件判断
${bndExport.containerList[0].kind eq '01' || bndExport.containerList[0].kind eq '02'}
- puppet(3) 变量、数据类型、表达式、条件判断语句-if、case、selector、unless
puppet(4) 变量.数据类型.表达式.条件判断语句-if.case.selector语句 puppet变量: 1.名称必须以$开头:赋值使用=,支持追加赋值+=: 2.每个变量都有两种引用格式: ...
- EL表达式多条件或判断用法
简单记录一EL表达式的判断用法 <c:if test="${(order.status == '06'&& order.type=='02') || (order.st ...
- EL表达式获取数据的方式
<%@page import="cn.jiemoxiaodi.domain.Person"%> <%@ page language="java" ...
- 在页面的el表达式是如何判断null的
<c:if test="${not empty message}"> <div id="message" class="alert ...
- 拉姆达表达式 追加 条件判断 Expression<Func<T, bool>>
public static class PredicateBuilder { /// <summary> /// 机关函数应用True时:单个AND有效,多个AND有效:单个OR无效,多个 ...
- EL表达式概述
E L(Expression Language) 目的:为了使JSP写起来更加简单.表达式语言的灵感来自于 ECMAScript 和 XPath 表达式语言,它提供了在 JSP 中简化表达式的方法. ...
- EL表达式从数组 Map List集合取值
Jstl是sun的标准taglib库,Jstl是标签库和el语言的结合. el 表达式的隐含对象pageScope,requestScope,sessionScope,applicationScope ...
随机推荐
- VN问题:error:请求的名称有效,但是找不到请求的类型的
把url中的jmsjms-pc换成IP地址试试看 IP地址你用的是外网地址,应该用局域网内网地址,改成内网地址再试试看 还有练习架设SVN服务器初期尽量用http协议,不要上来就用https协议,ht ...
- thinkphp发送邮件需要开启什么设置
邮件配置 'THINK_EMAIL' => array( 'SMTP_HOST' => 'smtp.163.com', //SMTP服务器 'SMTP_PORT' => '465', ...
- 学习javascript数据结构(四)——树
前言 总括: 本文讲解了数据结构中的[树]的概念,尽可能通俗易懂的解释树这种数据结构的概念,使用javascript实现了树,如有纰漏,欢迎批评指正. 原文博客地址:学习javascript数据结构( ...
- 强大的Cmder
why 漂亮,包装并美化了各个shell 带task功能,能记忆,能执行脚本 配合win10的bash,能实现类似xshell的功能 注意点 需要注意的一点,Cmder来源于另外一个项目ConEmu, ...
- 解决myeclipse10.1导出War包出错:Security Alert:Integrity check error
解决myeclipse10.1导出War包出错:Security Alert:Integrity check error 解决myeclipse10.1不能导出war包报 ============== ...
- C# WinForm程序退出的方法比较
1.this.Close(); 只是关闭当前窗口,若不是主窗体的话,是无法退出程序的,另外若有托管线程(非主线程),也无法干净地退出: 2.Application.Exit(); 强制所有消息中 ...
- 配置python+mod_wsgi+apache 时 在浏览器中访问服务器时报错:Invalid HTTP_HOST header: 'XXXXX'. You may need to add u'XXXXX' to ALLOWED_HOSTS,在setting.py中添加‘*”无效的原因
配置python+mod_wsgi+apache 时 在浏览器中访问服务器时报错:Invalid HTTP_HOST header: 'XXXXX'. You may need to add u'XX ...
- x64内核HOOK技术之拦截进程.拦截线程.拦截模块
x64内核HOOK技术之拦截进程.拦截线程.拦截模块 一丶为什么讲解HOOK技术. 在32系统下, 例如我们要HOOK SSDT表,那么直接讲CR0的内存保护属性去掉. 直接讲表的地址修改即可. 但是 ...
- 流API--初体验
在JDK8新增的许多功能中,有2个功能最重要,一个是Lambda表达式,一个是流API.Lambda表达式前面我已经整理过了,现在开始整理流API.首先应该如何定义流API中的"流" ...
- linkin大话设计模式--适配器模式
linkin大话设计模式--适配器模式 大家知道,在java中只允许单继承,但是在实际问题中往往都需要多继承,java引入了接口这一概念.(一个类可以实现多个接口) 由于接口中都是抽象方法,那么我们在 ...