c:forEach實現動態select標簽
<c:forEach>
標簽是更加通用的標簽,因為它迭代一個集合中的對象。
<c:forTokens>
標簽通過指定分隔符將字符串分隔為一個數組然后迭代它們。
-
JavaBean
public class SelectData { private String key; // 鍵 private String value; // 值 public SelectData(String key, String value) { super(); this.key = key; this.value = value; } public String getKey() { return key; } public void setKey(String key) { this.key = key; } public String getValue() { return value; } public void setValue(String value) { this.value = value; } }
-
Servlet
public class ServletDemo3 extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { List<SelectData> list = new ArrayList<SelectData>(); proList.add(new SelectData("1", "北京")); proList.add(new SelectData("2", "上海")); proList.add(new SelectData("3", "廣州")); proList.add(new SelectData("4", "深圳")); proList.add(new SelectData("5", "河北")); proList.add(new SelectData("6", "河南")); proList.add(new SelectData("7", "山西")); proList.add(new SelectData("8", "山東")); proList.add(new SelectData("9", "江蘇")); proList.add(new SelectData("10", "浙江")); req.setAttribute("proList",proList); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doGet(req,resp); } }
-
前端核心代碼
<select name="sel_Province">
<c:forEach items="${proList}" var="user" varStatus="status">
<option value="${user.key}">${list.value}</option>
</c:forEach>
</select>