1) <select onChange="showList(this.value);">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
</select>
2)<script type="text/javascript">
function showList(value){
var endValue=value;
}
</script>
我想要的是我想设置end的值是下拉列表的选择值
3)<c:forEach begin="1" end="? Here I want to set the endValue">
<h1>print data<h1>
</c:forEach>
答案 0 :(得分:1)
<c:forEach>
是在服务器端评估的jstl标记,因此您需要重新加载用户输入的页面以影响该标记的评估。您可以在select
更改时使用表单发布,如下例所示。这可以通过不同的方式完成,但是你无需回到服务器这一事实。
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
function showList(){
document.getElementById('myform').submit();
}
</script>
</head>
<body>
<form method="POST" id="myform">
<select onChange="showList();" name="myselect">
<option value="1" <c:if test="${param.myselect eq 1}">selected="selected"</c:if>>1</option>
<option value="2" <c:if test="${param.myselect eq 2}">selected="selected"</c:if>>2</option>
<option value="3" <c:if test="${param.myselect eq 3}">selected="selected"</c:if>>3</option>
<option value="4" <c:if test="${param.myselect eq 4}">selected="selected"</c:if>>4</option>
</select>
</form>
<c:if test="${not empty param.myselect}">
<c:forEach begin="1" end="${param.myselect}">
<h1>print data</h1>
</c:forEach>
</c:if>
</body>
</html>