b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

c:foreach循环map_c:foreach_c:foreach count

电脑杂谈  发布时间:2017-02-17 03:09:02  来源:网络整理
c:foreach

<c:forEachitems="#{varpersonList.partyContactMethods}"var="partyContactMethod">

<c:iftest="#{partyContactMethod.prefContactInd=='P'}">

<c:outvalue="#{partyContactMethod.contactMethod.contactNum}"></c:out>

</c:if>

</c:forEach>

我想在c:if的条件成立后,退出c:forEach循环,用break肯定是不行的,不知道有什么好的办法

可以跟C:CHOOSE标签结合使用这样应该能满足你的需求L:

HTMLcode<c:forEachvar="person"items="${people.people}"varStatus="rowCounter"><c:choose><c:whentest="${rowCounter.count%2==0}"><c:setvar="rowStyle"scope="page"value="odd"/></c:when><c:otherwise><c:setvar="rowStyle"scope="page"value="even"/></c:otherwise></c:choose><trclass="${rowStyle}"><td>${person.name}</td><td>${person.age}</td><td>${person.height}</td></tr></c:forEach> 但是我是想判断条件一成立,就退出foreach循环,你这样用chooese不是一样循环完结束

如果一定要这么用的话,你试试能不能在你想跳出的时候,将集合里剩余的元素删除掉。或者直接让集合=null。试试,也许可行呢?

这位哥,你的想法是不错,但是这是一个标签,人家都封装好了给你使用,若你想中断跳出就得问问标签的编程人员那代码怎么写的了。。。。所以用标签不可能实现这种效果的,我看你还是用java代码片吧。。c:foreach

用forEach的end属性,里面写结束的条件,可以是个局部变量等于某个特定的值,在执行结束的if语句中赋值,当end中的表达式里的变量等于if语句中设的值时,就可以结束。end就是用来设置结束条件的!

<c:set var="isMatch" scope="page">0</c:set><!-- 匹配标记,初始化时置为0 -->
<c:forEach items="#{varpersonList.partyContactMethods }" var="partyContactMethod" >
  <c:if test="#{partyContactMethod.prefContactInd eq 'P'} && isMatch ne 1">
  	<c:set var="isMatch" scope="page">1</c:set><!-- 匹配的时候,先把标记变量置为1再输出 -->
		<c:out value="#{partyContactMethod.contactMethod.contactNum }"></c:out>	
  </c:if>	
</c:forEach>

给楼主一个折中的方法吧,虽然不能跳出循环,但可以达到后续不在输出的目的。如果有更复杂的控制,可以设置多个变量进行相应的改动。

HTMLcode

<c:setvar="isMatch"scope="page">0</c:set><!--匹配标记,初始化时置为0-->

<c:forEachitems="#{varpersonList.partyContactMethods}"var="partyContactMethod">

<c:iftest="#{partyContactMethod.pre……

有个地方写错了,应该是:

<c:set var="isMatch" scope="page">0</c:set><!-- 匹配标记,初始化时置为0 -->
<c:forEach items="#{varpersonList.partyContactMethods }" var="partyContactMethod" >
  <c:if test="#{partyContactMethod.prefContactInd eq 'P' && isMatch ne 1">
      <c:set var="isMatch" scope="page">1</c:set><!-- 匹配的时候,先把标记变量置为1再输出 -->
        <c:out value="#{partyContactMethod.contactMethod.contactNum }"></c:out>    
  </c:if>    
</c:forEach>


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-32878-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 张婷
        张婷

        lu的身高

        • 顾笑阳
          顾笑阳

          那是因为濒海舰系统是第一次搞

      • 刘志鑫
        刘志鑫

        千玺就像现实版的真人小王子

      • 早见沙织
        早见沙织

        男女之事不能瞎搞

      热点图片
      拼命载入中...