JSTL的常用C标签
1)c:out 单值输出
语法:
<c:out value="" />
<c:out value=""></c:out>举例:
//1 最常用
<c:out value="${info}" />//2 设置默认值
<c:out value="${info}" defalut="information" />//3 设置在标签主体中
<c:out value="${info}">information</c:out>//4 一个项目中的例子
<input type="text" name="sortName" value="<c:out value='${assessProKindVO.sortName }'/>">//5 输出一个VO实体(如果查询的结果只有一个VO实体时使用c:out就可以了 不用使用c:foreach)
//下面的例子就是输出一个VO全部的属性信息 <tr> <td><input type="radio" name="UUID" value="<c:out value='${assessQuotaVO.uuid}'/>"></td> <td><c:out value="${rowStatus.count}" /></td> <td><c:out value="${assessQuotaVO.quotaName}" /></td> <td><c:out value="${assessQuotaVO.quotaContent}" /></td> <td><c:out value="${assessQuotaVO.score}" /></td> <td><c:out value="${assessQuotaVO.factor}" /></td> </tr>2) c:if 条件判断
语法:
<c:if test="判断条件">
满足条件时执行的语句</c:if>举例:
<select name="status">
<option value="1" <c:if test="${assessProKindVO.status == '1' }">selected</c:if>>启用</option> <option value="0" <c:if test="${assessProKindVO.status == '0' }">selected</c:if>>未启用</option> </select> 3)c:choose 多条件判断语法:
<c:choose> 标签体内容(<c:when> <c:otherwise>)</c:choose><c:when test="判断条件">
满足条件时执行的语句</c:when><c:otherwise>
当所有的<c:when>条件都不满足时,执行的语句</c:otherwise>举例:
<c:choose>
<c:when test="${assessProKindVO.status == '0'}">未启用</c:when><c:when test="${assessProKindVO.status == '1'}">启用</c:when></c:choose>
4)c:forEach 输出数组、集合[List、Set、Map]
语法:
<c:forEach items="从Action获取的集合" var="集合中一个元素的名称" varStatus="保存相关成员信息">
标签体</c:forEach>举例:
//1 输出附件列表
<select id="attachs" name="attachs" οndblclick="downloadAttachment()" > <c:forEach items="${attachList}" var="attachVO" varStatus="rowStatus"> <option value="<c:out value='${attachVO.uuid }'/>"><c:out value='${attachVO.attachname }'/></option> </c:forEach></select>
//2 设置年份值
<SELECT name="assessYear" style="width:80%"> <c:forEach var="i" begin="2000" end="2020" step="1"> <OPTION value="<c:out value='${i}'/>" <c:if test="${assessYear == i }">selected</c:if>><c:out value='${i}'/></OPTION> </c:forEach></SELECT> //3 分别对应了选择/序号/项目名称/考核标准/分值/加分因素 输出VO集合<c:forEach items="${list}" var="assessQuotaVO" varStatus="rowStatus"> <tr> <td><input type="radio" name="UUID" value="<c:out value='${assessQuotaVO.uuid}'/>"></td> <td><c:out value="${rowStatus.count}" /></td> <td><c:out value="${assessQuotaVO.quotaName}" /></td> <td><c:out value="${assessQuotaVO.quotaContent}" /></td> <td><c:out value="${assessQuotaVO.score}" /></td> <td><c:out value="${assessQuotaVO.factor}" /></td> </tr></c:forEach> 5)c:url 根据路径/参数生成新的URL语法:
<c:url value="资源相对路径">
<c:param name="paramName" value="paramValue"></c:url> 举例://1 寻找资源文件
<div> <img style="CURSOR: hand" src="<c:url value='/images/save2.gif'/>" οnclick="_addProKind()"> <img style="CURSOR: hand" src="<c:url value='/images/return.gif'/>" οnclick="window.history.back();"> </div> //2 引入CSS/JS<link href="<c:url value='/include/style2.css'/>" type="text/css" rel="stylesheet"><script language="javascript" type="text/javascript" src="<c:url value='/include/verify/formVerify.js'/>"></script>
//3 设置跳转页面
document.form1.action = "<c:url value='/servlet/AssessTargetAction'/>";window.location = "<c:url value='/pages/assess/assessProKindManage.jsp'/>";window.location = "<c:url value='/servlet/AssessTargetAction?oper=findProKindByUUID&uuid='/>"+_uuid;window.open("<c:url value='/servlet/AssessDeptPublishAction?oper=initPublish&orguuid='/>"+_orguuid, "publish", 'width=550,height=400,resizable=no,status=no,Toolbar=no');