html form instance analysis (forEach, set, choose, otherwise)

One, type = "hidden" hidden type 

<form name="List" method="post" action="">
    <input type="hidden" readonly="readonly" name="V" value="${V}"/>
    <div class="g">
        <table id="f" class="f" width="100%">
            <tbody class="no">

 二、<c:forEach>

var:设置变量名,并从集合中取出一组数据。相当于上面的s
begin:指定循环的起始位置,如果没有指定,则默认从第一个值开始遍历
end:指定循环的终止位置,如果没有指定,则默认循环到最后一个
step:用于指定循环的步长,例如step="2",则会隔一个循环。下面会有例子说明
varStatus:用于指定循环的状态,有一下四个属性值,这个也比较常用,特别是index属性值,表示索引值。

            <c:forEach items="${data}" var="Obj" varStatus="i">
                <tr>

三、<c:set> 

如果“value”为null,“var”指定的属性将被删除!
如果“var”指定的属性不存在,则会创建一个属性,但仅当“value”不为null时才会创建新属性。
不能同时有“var”和“target”属性。
“scope”是可选的,如果没有使用这个属性,则默认为页面作用域。
具体的,当没有使用这个属性时,容器会依次在页面作用域、请求作用域、会话作用域、应用作用域查找,如果找不到“var”指定名字的作用域属性,容器就会在页面作用域新建一个属性;如果找不到“target”指定的对象,容器会抛出一个异常。
  <c:set var="Num" value="${Obj.NUM}"/>
                    <c:if test="${empty Num}">
                        <c:set var="Num" value="0"/>
                    </c:if>
                    <td class="aligncenter" title="${Map[Obj.B]}">${Map[Obj.B]}</td>

四、<c:choose> 

<c:if>没有<c:else>可以用<c:choose>来取代结构:
<c:choose>
    <c:when test="">如果
    </c:when>
    <c:otherwise>否则
    </c:otherwise>
</c:choose>
                    <c:choose>
                        <c:when test="${(Obj.B !=null) and (Obj.B!='')}">
                            ***
                        </c:when>
                        <c:otherwise>
                            ***
                        </c:otherwise>
                    </c:choose>
                </tr>
            </c:forEach>
            </tbody>
            <tfoot></tfoot>
        </table>
    </div>
    <div class="pageBarContainer">
在实际开发中我们一般在ajax请求中用`不变的html${变量}html标签`代替以前传统复杂的单引号双引号与+的拼接
 <div class="left">共${count}条 分${pages}页</div>
    </div>
</form>

 

Guess you like

Origin blog.csdn.net/qq_36766417/article/details/106279552