2013-09-16 2 views
1

У меня есть цикл Еогеасп вроде следующегоJSTL: Еогеасп установка значения скрытой переменной возвращается цикл нулевой всегда

<% 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 из перечисленных item it alsway prints 0

В чем проблема?

ответ

3

Вы можете попробовать это так:

<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); 
} 
Смежные вопросы