C标签库:
<c:forEach>标签有两种使用方式:
<c:forEach var="e" items="${leaveMsgList}" varStatus="i">
<tr>
<td>${i.index}</td> //这里也可用${i.count}
<td>${e.login1.loginname }</td>
<td>${e.l_msg }</td>
<td>${e.l_date }</td>
<td>${e.l_back }</td>
<td>
<a href="javascript:;" onclick="fnClick(this,'${e.t_leave_id}');" ><button class="btn btn-success">进行审核</button></a>
</td>
</tr>
</c:forEach>
<c:choose>标签就相当于是java中的if /else if / else结构.
通过<c:set>标签来在JSP页面设定变量。这个变量的值可以通过EL表达式取出来
<c:choose>
<c:when test="${fenye.pages<=10}">
<!-- 开始设置变量,我在set标签中并没有写出存到哪个域对象中,所以是存到默认的pageContext域对象中,存了之后,begin会在整个页面里有效 -->
<c:set var="begin" value="1"/>
<c:set var="end" value="${fenye.pages}"/>
</c:when>
<c:otherwise >
<!-- 当我们的总页数大于10页时,通过公式计算出begin和end -->
<c:set var="begin" value="${fenye.pageNo-5}"/>
<c:set var="end" value="${fenye.pageNo+4}"/>
<!-- 当 头溢出时 -->
<c:if test="${begin<1}">
<c:set var="begin" value="1"/>
<c:set var="end" value="10"/>
</c:if>
<!-- 当尾溢出 时 -->
<c:if test="${end>fenye.pages}">
<c:set var="begin" value="${fenye.pages-9}"/>
<c:set var="end" value="${fenye.pages}"/>
</c:if>
</c:otherwise>
</c:choose>
<c:forEach var="i" begin="${begin}" end="${end}">
<c:if test="${fenye.pageNo==i}">
${i }
</c:if>
<c:if test="${fenye.pageNo!=i}">
<a href="<%=path %>/myLeaveAction!retrieve.action?fenye.pageNo=${i}">[${i}]</a>
</c:if>
</c:forEach>
<c:choose>
<c:when test="${score > 100 || score < 0}">错误的分数:${score }</c:when>
<c:when test="${score >= 90 }">A级</c:when>
<c:when test="${score >= 80 }">B级</c:when>
<c:when test="${score >= 70 }">C级</c:when>
<c:when test="${score >= 60 }">D级</c:when>
<c:otherwise>E级</c:otherwise>
</c:choose>
<c:if>标签
<c:if test="${ not empty e.login2.loginname }">
${e.login2.loginname }
</c:if>
<c:if test="${empty e.login2.loginname }">
待定
</c:if>
<c:url>标签
<c:set>标签
struts框架中特有的S标签:
记得要在jsp页面导入标签库:<%@ taglib prefix=“s” uri="/struts-tags"%>
注意:C标签中可没有if /else标签,而S标签中有。
<body>
el方式取值:${requestScope.name } <br/>
s标签取值(需要用井号,但若是在值栈中取值则不需要井号):
<s:property value="#request.name" /> <br/>
el方式取值:${sessionScope.name } <br/>
s标签取值:<s:property value="#session.name" /> <br/>
el方式取值:${applicationScope.name } <br/>
s标签取值:<s:property value="#application.name" /> <br/>
<!-- 从值栈中取值 .不需要#符号-->
el方式取值:${username } <br/>
s标签取值:<s:property value="[1].username" /> <br/>
<s:debug>
</s:debug> <br/>
</body>
如下:这是在某个jsp页面,并且接收到了 在后台时所保存到域对象中的 list集合:
${list } <br/>
<table border="1" >
<tr><th>序号</th><th>姓名</th><th>性别</th></tr>
<s:iterator var="e" value="list" status="i">
<tr>
<td> <s:property value="#i.count"/> </td>
<td> ${e.username } </td>
<td>
<s:if test=" #e.gender=='male' ">男</s:if>
<s:else>女</s:else>
</td>
</tr>
</s:iterator>
</table>