如何从jstl中的foreach循环获取索引值
我有一个在request
对象中设置的值如下,
String[] categoriesList=null; categoriesList = engine.getCategoryNamesArray(); request.setAttribute("categoriesList", categoriesList );
这是我如何在jsp页面中迭代
<% if(request.getAttribute("categoriesList") != null) { %> <c:forEach var="categoryName" items="${categoriesList}"> <li><a onclick="getCategoryIndex()" href="#">${categoryName}</a></li> </c:forEach> <% }%>
如何获得每个元素的索引并将其传递给JavaScript函数onclick="getCategoryIndex()"
。
使用varStatus获取索引c:forEach varStatus属性
<c:forEach var="categoryName" items="${categoriesList}" varStatus="loop"> <li><a onclick="getCategoryIndex(${loop.index})" href="#">${categoryName}</a></li> </c:forEach>
你可以像这样使用varStatus
属性: –
<c:forEach var="categoryName" items="${categoriesList}" varStatus="myIndex">
myIndex.index会给你索引。 这里myIndex
是一个LoopTagStatus对象。
因此,你可以发送到你的JavaScript方法是这样的: –
<a onclick="getCategoryIndex(${myIndex.index})" href="#">${categoryName}</a>
我面临类似的问题,现在我明白我们有更多的select:varStatus =“循环”,这里将是循环将variables,将持有的索引的洛普。
它可以用于读取Zeor基本索引或1个基本索引。
${loop.count}` it will give 1 starting base index.
${loop.index} it will give 0 base index as normal Index of array
从0开始。
例如 :
<c:forEach var="currentImage" items="${cityBannerImages}" varStatus="loop"> <picture> <source srcset="${currentImage}" media="(min-width: 1000px)"></source> <source srcset="${cityMobileImages[loop.count]}" media="(min-width:600px)"></source> <img srcset="${cityMobileImages[loop.count]}" alt=""></img> </picture> </c:forEach>
欲了解更多信息,请参阅此链接
$ {}类别名称
上线给我错误。 所以我以下面的方式写下来,对我来说工作很好。 ')“href =”#“> $ {categoryName}
可能是别人可能会得到相同的错误。 看看这个家伙!