我正在尝试获取在页面中单击的下拉菜单的值。这就是我现在正在做的事情:
<c:forEach items="${menuItem.dropdown}" var="dItem">
<li>
<a href="${dropdownItem.link}" onclick="<c:set var="clickedDropdown" value="${dItem.name}"/>">${dItem.name}</a>
</li>
</c:forEach>
但是当我点击下拉菜单时,它会设置最后一个下拉菜单项的值。我没有得到正确的价值。有什么办法,我可以得到那个下拉菜单项值吗?
答案 0 :(得分:1)
onclick="<c:set var="clickedDropdown" value="${dItem.name}"/>"
虽然<c:set var="clickedDropdown" value="${dItem.name}"/>
位于onclick
内,但它会在jsp
编译时预先执行。因为它位于foreach
内,所以最后一个值仍然是变量的值。
即使您想使用javascript
设置变量,也不能,因为javascript
适用于前端,而jstl
适用于后端。
所以,显然实际上没有办法实现这一目标。您需要完全改变您的方法。