Struts2--控制标签(s:if、s:elseif、s:else、s:iterator)

struts2 标签使用 struts2 标签使用struts2 标签使用struts2 标签使用struts2 标签使用struts2 标签使用struts2 标签使用 立即下载
<s:if>、<s:elseif>、<s:else>标签

Struts2 标签库中的 <s:if>、<s:elseif>、<s:else> 标签与 Java 中的 if、else if 和 else 语句功能类似,主要用于程序的分支逻辑控制。其中,只有 <s:if> 标签可以单独使用,而 <s:elseif>、<s:else> 都必须与 <s:if> 标签结合才能使用。其使用语法格式如下所示:

<s:if test="表达式1">
    标签体
</s:if>
<s:elseif test="表达式2">
    标签体
</s:elseif>
<s:else>
    标签体
</s:else>
<s:iterator>标签

<s:iterator> 标签主要用于对集合中的数据进行迭代,它可以根据条件遍历集合中的数据。<s:iterator> 标签的属性及相关说明如下表所示:

属性是否必须默认值类型描述
begin否0Integer迭代数组或集合的起始位置
end否数组或集合的长度大小减 1,若 Step 为负,则为 0。Integer迭代数组或集合的结束位置
status否falseBoolean迭代过程中的状态
step否1Integer指定每一次迭代后索引增加的值
value否无String迭代的数组或集合对象
var否无String将生成的 Iterator 设置为 page 范围的属性
id否无String指定了集合元素的 id,现已用 var 代替

如果在 <s:iterator> 标签中指定 status 属性,就可以通过该属性获取迭代过程中的状态信息,如元素数、当前索引值等。通过 status 属性获取信息的方法如表 2 所示(假设其属性值为 st)。

方法说明
st.count返回当前已经遍历的集合元素的个数
st.first返回当前遍历元素是否为集合的第一个元素
st.last返回当前遍历元素是否为集合的最后一个元素
st.index返回遍历元素的当前索引值

示例:
在项目的 WebContent 下创建一个名称为 controlTags.jsp 文件,编辑后如下所示:

<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<%@taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>控制标签</title>
</head>
<body>
<center>
    <table border="1px" cellpadding="1">
        <s:iterator var="name" value="{'apple','orange','pear','banana'}" status="st">
            <s:if test="#st.odd">
                <tr style="background-color:white;">
                    <td><s:property value="name"/></td>
                </tr>
            </s:if>
            <s:else>
                <tr style="background-color:grey;">
                    <td><s:property value="name"/></td>
                </tr>
            </s:else>
        </s:iterator>
    </table>
</center>
</body>
</html>

上述代码中,首先引入了 Struts2 的标签库,然后在

标签内,使用 <s:iterator> 标签循环输出集合中的,并将通过该标签 status 属性的 odd 方法获取的值作为 <s:if> 和 <s:else> 标签的判断条件,对表格进行控制显示。

无人机散热系统设计:从材料选择到智能调控的全面解析 本文全面解析无人机散热系统设计,从材料选择到智能调控,探讨了导热界面材料、轻量化散热结构和智能调控算法的应用。通过实战案例,展示了如何在极端环境下优化散热性能,提升无人机的工作效率和可靠性。 阅读详情

相关推荐

从报错到定位:Memtest86 DQ位算法解析与实践指南

本文深入解析了Memtest86内存测试工具报错信息的解读方法,重点介绍了通过地址解析、数据转换、位比对和DQ定位四步算法,精准锁定故障DQ位的实践流程。文章以DDR4和DDR5为例,详细拆解了从十六进制报错到二进制比对的完整步骤,并提供了从单个报错分析到故障模式诊断的进阶指南,帮助用户将抽象的报错信息转化为具体的维修或排查依据。

sre5engineer的博客 486

java中s标签_Struts2 控制标签(一) S:if、S:elseif和S:else标签使用

1.首先搭建Struts2的环境新建Web工程后,将Struts2的架包(可到Struts的官方下载)考到lib目录下面。1.首先搭建Struts2的环境新建Web工程后,将Struts2的架包(可到Struts的官方下载)考到lib目录下面。2.首先创建一个Action类Java代码package com.wl.control.tags;import com.opensymphony.xwork...

weixin_42307478的博客 356

GXHT40温湿度传感器:I2C通信与CRC校验实战解析

本文详细解析GXHT40温湿度传感器的I2C通信协议与CRC校验机制,涵盖硬件连接、时序控制、数据读取及加热功能应用。通过实战案例分享优化技巧与异常处理,帮助开发者提升嵌入式系统中传感器数据的准确性与可靠性。

rgv234567的博客 241

Struts2 控制标签:<s:if>、<s:elseif>和<s:else>

单独使用&lt;s:if&gt;标签&lt;s:if test="%{#variable=='String 1'}"&gt;  This is String 1&lt;/s:if&gt; 也可以和&lt;s:elseif&gt;标签一起使用: &lt;s:if&gt;+&lt;s:elseif&gt;标签&lt;s:if test="%{#variable=='Strin

weixin_33850015的博客 292

从零配置EtherCAT IGH主站:手把手教你处理内核版本与实时性优化的那些坑

本文详细指导如何从零配置EtherCAT IGH主站,涵盖内核版本适配、实时性优化及常见问题解决方案。通过精确匹配内核头文件、应用实时补丁和优化网卡驱动,帮助开发者实现微秒级响应,适用于工业自动化、机器人控制等高精度场景。

weixin_30790841的博客 382

VS Code ESP-IDF无法找到源文件、头文件波浪线解决

背景:想要编译小智AI项目,可以正常编译。但是一些头文件,例如#include <nvs.h>等无法找到。

Hot_Ant的博客 1490

常用Struts 2标签用法 【整理】

文章目录1、s:if , s:elseif , s:else标签2、s:iterator标签3、merge标签和append标签4、generator标签5、sort标签6、subset标签 1、s:if , s:elseif , s:else标签 Struts2 标签库中的 <s:if>、<s:elseif>、<s:else> 标签与 Java 中的 if...

超逸の学习技术博客 1546

【异常】Cursor报错We‘re having trouble connecting to the model provider. This might be temporary

在使用Cursor编辑器进行AI交互操作时,界面弹出如下报错提示,导致无法正常调用模型服务,影响使用流程:We’re having trouble connecting to the model provider. This might be temporary - please try again in a moment. 该报错核心含义为Cursor编辑器无法正常连接至背后的AI模型服务提供商(如OpenAI、Anthropic等),属于连接类异常,并非编辑器本身运行故障。经排查,该报错不具备破坏性,仅

奶爸的编程之路,也就一周冷个三天 1690

jsp 页面 s:if s:elseif 字符串比较

username 来自action 在页面上取得username的值 比较语句这样写**** 这样写是错误的. 正确的写法如下: **** ***   注意:如果还比较不成功,你则要注意,你的字符串有没有多余空格,在action里作username.trim(); 

Xiaobo Huang 的专栏 8299

【原理图PCB专题】Allegro模块化移动器件报...has the LOCKED property怎么解锁?

正常来说做好一个模块化,如果不需要再动,最好还是lock,防止不明白的工程师异动导致问题。如果复用布局设计时,因为有些器件和拓扑并不完全一致,那需要调整部分器件,被锁之后只能全选,无法修改。所以解开锁定后,就能正常编辑了。

一点硬件 2391

C# MES通信从入门到精通(10)——C#使用HTTP的Post和Get方法和Mes系统通信

本文详细介绍了如何利用C#完成与HTTP协议的MES系统进行通信,通过POST和GET方法实现与MES系统的交互,由高级工程师的实战经验总结,实属C#与MES通信领域的葵花宝典!

qq_34059233的博客 3413

s:iterator使用begin、end、step

如果list为null,后台会报错,前台对页面会有影响,例如在一个div中做遍历,此时div根本出不来,就算包在div内。 ${price} ${ct} ¥${price*ct} ...

WALK ON 903

高速信号设计中的关键测试项目与测试仪器详解

高速信号设计是一个多维度协同优化的系统工程。时域分析如同外科手术刀般精准定位物理缺陷,频域分析提供传输通道的频谱指纹,信号质量评估量化系统鲁棒性,接收端容限测试验证极端工况下的可靠性,协议一致性确保生态互操作性,而电源完整性则直指诸多信号问题的根源。

u014344410的博客 217

struts2标签

layout: post title: struts2标签 subtitle: struts2标签 date: 2018-06-03 author: ZL header-img: img/20180603.jpg catalog: true tags: - struts标签 标签结构 image 控制标签 s:ite...

buglei123的博客 154

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Struts2的标签库

Struts2标签根据用途不同可以分为5类: 数据标签:用于输出值栈中的值,或者将变量、对象存入值栈 控制标签:主要用于控制页面执行流程 表单标签:主要用于生成HTML页面的表单元素 非标单标签:主要用于生成页面上的树、Tab页等标签 Ajax标签:主要用于支持Ajax效果 数据标签: action:用于在JSP页面直接调用一个action property:用于输出某个值 pa

qq_20453707的专栏 399

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

struts2标签库----控制标签详解

前面几篇文章我们介绍了有关struts2的基本内容,简单理解了整个框架的运作流程。从本篇开始我们逐渐了解和使用struts2为我们提供的标签库技术,使用这些标签可以大大降低我们表现层的开发难度。根据这些标签的使用途径可以初步划分为以下三大类: UI标签:主要用于生成HTML标签元素 非UI标签:主要用获取后台数据,简单的逻辑控制等 Ajax标签:用作js请求 对于UI标签我们又大致可以分为两类,表单

Walker_YAM 1771

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Struts2 框架学习——s标签和国际化

一、s标签 在struts-2.3.15.1/docs/WW/docs/tag-reference.html下,就有着struts2所有标签的参考文献,只能看看其中比较常用的标签。其他的以后遇到了在看参考文献即可。 通用标签,control Tags 和 DataTags,下面用方框圈起来的就是我们需要了解的 1.1、if、elseif、else 标签。 这个很简单,流程控制的标签,跟...

热心网友 2481

Struts2控制标签的学习

Struts2控制标签 Struts2的控制标签,主要用于完成流程控制控制标签可以完成输出流程的控制,例如循环、分支等操作,也可以完成对集合的合并、排序等操作。 1、if、else if、else标签 ​ if标签用来控制基本的条件处理流程,通常和else标签或者elseif标签连用。 其参数、属性为 <%@page contentType="在这里插入图片描述 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200923193355804.png?x-oss-

weixin_43850429的博客 260

Struts2-控制标签

Struts2-控制标签

VipMao的博客 1081

Struts2的控制标签库和数据标签库(六)

勿以恶小而为之,勿以善小而不为--------------------------刘备 劝诸君,多行善事积福报,莫作恶 主要内容有: 标签库的引用,if,iterator,set,property,date 等标签库的用法

两个蝴蝶飞 631

Struts2框架学习之五:通用标签详解

前言Struts2框架为我们提供了很多标签,这些标签总体上可以分为两类:通用标签和UI标签。而较常使用的又是通用标签,所以文章的内容也是围绕通用标签展开的。通用标签分为两类:数据标签和控制标签。数据标签用于访问值栈中数据,控制标签用于控制呈现页面时数据执行流程。如果需要使用Struts 2框架的标签库,需要在页面的首部引入以下代码:<%@ taglib uri="/struts-tags" pref

rhwayfun专栏 3168

《研磨struts2》第八章 Struts2的Taglib 之 8.3 控制标签

8.3  控制标签 控制标签关注程序的运行流程,比如用if/else来进行分支控制,用iterator来进行循环控制。接下来就来学习Struts2的控制标签。 8.3.1 if、elseif与else标签 1:if标签的功能:        类似于Java程序中的if,用来表达分支判断。    else标签的功能:        类似于Java程序中的else。

技术至上--Timo 512

Struts2学习——(七)Struts2标签I

一 介绍 1.Struts2的作用    Struts2标签库提供了主题、模板支持,极大地简化了视图页面的编写,而且,struts2的主题、模板都提供了很好的扩展性。实现了更好的代码复用。Struts2允许在页面中使用自定义组件,这完全能满足项目中页面显示复杂,多变的需求。     Struts2的标签库有一个巨大的改进之处,struts2标签库的标签不依赖于任何表现层技术,也就是说strt

WangQYoho的博客 603

Structs2 HelloWorld-08 控制标签

控制标签关注程序的运行流程,比如用if/else来进行分支控制,用iterator来进行循环控制。 一、 if、elseif与else标签 1:if标签的功能: 类似于Java程序中的if,用来表达分支判断。    else标签的功能: 类似于Java程序中的else。    elseif标签的功能:        类似于Java程序中的else if。 2:属性:       

我自倾怀,君且随意 746

Struts2学习笔记__控制标签

参考http://sishuok.com/forum/blogPost/list/4079.html if、elseif与else标签 1:if标签的功能: 类似于Java程序中的if,用来表达分支判断。 else标签的功能: 类似于Java程序中的else。 elseif标签的功能: 类似于Java程序中的else if。 2:属性: if标签和elseif标签都只...

茨时代べ 的博客 180

控制标签(if、elseif、else)

1 <%@ page language="java" contentType="text/html; charset=UTF-8"%> 2 <%@ taglib uri="/struts-tags" prefix="struts"%> 3 <%@ taglib uri="/struts-tags" prefix="s"%> 4 &lt...

280
上一篇: Struts2--用OGNL表达式从域中取值
下一篇: Struts--数据标签(s:property、s:a、s:debug、s:include、s:param)
吴声子夜歌
博客等级 码龄9年 2687粉丝 2266原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值