119

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()"

4

5 に答える 5

256

varStatusを使用してインデックス c:forEach varStatus プロパティを取得します

<c:forEach var="categoryName" items="${categoriesList}" varStatus="loop">
    <li><a onclick="getCategoryIndex(${loop.index})" href="#">${categoryName}</a></li>
</c:forEach>
于 2013-09-16T10:41:45.377 に答える
14

varStatus次のような属性を使用できます:-

<c:forEach var="categoryName" items="${categoriesList}" varStatus="myIndex">

myIndex.indexはインデックスを提供します。これmyIndexはLoopTagStatusオブジェクトです。

したがって、次のようにそれを JavaScript メソッドに送信できます。

<a onclick="getCategoryIndex(${myIndex.index})" href="#">${categoryName}</a>
于 2013-09-16T10:42:59.813 に答える