[Jsp] 如何在JSP页面快速输出从Servlet接收的数据_看JSTL常用C标签的威力

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" ondblclick="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'/>"   onclick="_addProKind()">
       <img style="CURSOR: hand" src="<c:url value='/images/return.gif'/>"   onclick="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');
  

 

 

 


 

posted @ 2012-11-20 20:29  Aviva_ye  阅读(1340)  评论(1编辑  收藏  举报