[英]how to add arraylist in Jsp
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<%=new Date() %>
<%
ArrayList al = new ArrayList();
al.add("C");
al.add("A");
al.add("E");
al.add("B");
al.add("D");
al.add("F");
%>
<select>
<option value="<%=al%>"></option>
</select>
</body>
</html>
这是我的代码我想在Jsp中下载Arraylist我不知道如何在html obtion中绑定arraylist或下拉请帮助我我尝试了很多但无法做到这一点。
您必须使用JSTL <forEach>
来遍历元素并将其添加到select-option
。 可能使List
成为范围属性。 填充servlet中的List
对象,将其设置在request/session
范围内并将request
转发给此JSP。 请记住,您可以在JSP本身填充List
并使用pageScope
来引用它,但在我看来这将是糟糕的设计。
<select>
<c:forEach var="element" items="${al}">
<option value="${element}">${element}</option>
</c:forEach>
</select>
这里, al
是可能在request
或session
范围内存储List
的属性的名称。
在项目中使用JSTL:
下载 JSTL 1.2 jar。
在JSP文件中为JSTL核心taglib声明taglib 。
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
如果你只想使用scriptlets(当然不好):
<%
List<String> al = new ArrayList<String>();
al.add("C");
..........
...........
%>
<select>
<% for(String element: al) { %>
<option value="<%=element%>"><%=element%></option>
<% } %>
</select>
如果已将List
定义为List<String>
,则上述代码将起作用,否则您需要将该元素转换为String
。
EDITED
尝试这个:
<%
ArrayList al = new ArrayList();
al.add("C");
al.add("A");
al.add("E");
al.add("B");
al.add("D");
al.add("F");
%>
<select>
<% for(int i = 0; i < al.size(); i++) {
String option = (String)al.get(i);
%>
<option value="<%= option %>"><%= option %></option>
<% } %>
</select>
</body>
</html>
看一下核心JSTL库中的标签。
将arraylist存储在pageScope.myList中并循环如下:
<select>
<c:forEach items="${pageScope.myList}" var="item" varStatus="status">
<option value='${item}'></option>
</c:forEach >
</select>
这比使用不被视为良好实践的scriptlet更可取
试试这个:在<%! … %>
之间声明你的arraylist <%! … %>
<%! … %>
<%! ArrayList al = new ArrayList(); %>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.