我写的是:
<c:forEach var="cntr" begin="1" end="10">
<c:set var="mycase" value="${param.mode${cntr}}" />
<c:if test="${mycase != null}">
<c:param name="mode${cntr}" value="${mycase}"/>
</c:if>
</c:forEach>
我想要的结果是位于此外的重定向继承param.mode1
,param.mode2
等的值,就像我写的那样:
<c:if test="${param.mode1 != null}">
<c:param name="mode1" value="${param.mode1}"/>
</c:if>
<c:if test="${param.mode2 != null}">
<c:param name="mode2" value="${param.mode2}"/>
</c:if>
<c:if test="${param.mode3 != null}">
<c:param name="mode3" value="${param.mode1}"/>
</c:if>
<c:if test="${param.mode4 != null}">
<c:param name="mode4" value="${param.mode2}"/>
</c:if>
<c:if test="${param.mode5 != null}">
<c:param name="mode5" value="${param.mode1}"/>
</c:if>
<c:if test="${param.mode6 != null}">
<c:param name="mode6" value="${param.mode2}"/>
</c:if>
所有帮助表示赞赏。
答案 0 :(得分:1)
您需要使用mode${cntr}
设置另一个变量,并使用括号表示法获取相关值,其中您可以传递动态密钥。
<c:forEach var="cntr" begin="1" end="10">
<c:set var="mode" value="mode${cntr}" />
<c:set var="mycase" value="${param[mode]}" />
<c:if test="${mycase != null}">
<c:param name="mode${cntr}" value="${mycase}"/>
</c:if>
</c:forEach>