2015-02-24 68 views
1

我正在尝试以下示例代码来填充jsp页面中的下拉列表,但不显示下拉列表中的项目。我可以在视图页面源代码中看到下拉菜单中的项目,如下所示。jsp dropdownlist不工作​​

页源:

的java: 包com。示例; import java.util.ArrayList; import java.util.List;

public class ListBean { 
List<String> list = new ArrayList<String>(); 
public List<String> getItems() { 
    System.out.println("Done adding to list"); 

    list.add("Thing1"); 
    list.add("Thing2"); 
    list.add("Thing3"); 

    return list; 
} 
private String old_list = "No list message."; 
public String getSomething() { 
    System.out.println("Get list"); 
    return old_list; 
} 

private String message = "No message."; 
public String getMessage() { 
    System.out.println("Get message"); 
    return message; 
} 
public void setMessage(String s) { 
    message = s; 
} 
} 

HTML:

<%@page contentType="text/html" pageEncoding="UTF-8"%> 
    <jsp:useBean id="list" class="com.example.ListBean"/> 
<!DOCTYPE html> 
<html> 
<head> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
    <title>JSP Page</title> 
</head> 
<body> 
    <select> 
     <c:forEach var="item" items="${list.items}"> 
      <option>${item}</option> 
     </c:forEach> 
    </select> 
</body> 
</html> 
+0

''和JSTL不混合。提供相关数据作为Servlet的请求属性。 – 2015-02-24 16:21:57

回答

0

你忘了导入JSTL 标签库。将以下taglib指令添加到您的JSP中。

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 
+0

它通过导入JSTL库而不是在移除之后工作。 – 2015-02-24 16:33:59

+0

是的,一旦我想到你正在实例化,似乎是一个预先填充的列表,我删除了它。请刷新您的页面以查看更改。 – 2015-02-24 16:36:51