簡體   English   中英

jstl:foreach循環將值設置為隱藏變量始終返回零

[英]jstl : foreach loop setting values to a hidden variable returns zero always

我有一個如下的foreach循環

<% if (request.getAttribute("categoriesList") != null) {%>
    <c:forEach var="categoryName" items="${categoriesList}" varStatus="category">
       <input type="hidden" id="categoryIndex" name="categoryIndex" value="${category.index}"/>
       <li><a onclick="getCategoryIndex()" href="#">${categoryName}</a></li>
    </c:forEach>
<% }%>

我嘗試如下設置項目的索引值

<input type="hidden" id="categoryIndex" name="categoryIndex" value="${category.index}"/>

當我這樣做

var categoryIndex = $('#categoryIndex').val();
console.log("categoryIndex : "+categoryIndex);

始終列出的項目的onClick會打印0

可能是什么問題呢?

您可以這樣嘗試:

 <c:forEach var="categoryName" items="${categoriesList}" varStatus="category">
   <input type="hidden" id="categoryIndex+${category.index}" name="categoryIndex" value="${category.index}"/>
   <li><a onclick="getCategoryIndex(${category.index})" href="#">${categoryName}</a></li>
 </c:forEach>

在您的JavaScript方法中:

 function getCategoryIndex(x){
    var categoryIndex = $('#categoryIndex'+x).val();
    console.log("categoryIndex : "+categoryIndex);
 }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM