动态增加值以下拉

问题描述 投票:0回答:3

您好,下面是我的代码,用于动态填充下拉列表。但是,当我尝试这样做时,下拉列表中没有任何内容。任何帮助将不胜感激。

<% List<String> w = new ArrayList<String>();
    w.add("John");
    w.add("Joseph");
    %>
    <td><select id="web" name="web">

         <c:forEach var="item" items="${w}">
              <option><c:out value="${item}"/></option>
         </c:foreach>

    </select></td> 
jsp jsp-tags
3个回答
0
投票

正确结束forEach

</c:forEach>

0
投票

似乎是变量范围问题。 EL仅对作用域变量起作用。因此,它无法访问scriptlet varialbes。请尝试以下]]

<% List w = new ArrayList();
    w.add("John");
    w.add("Joseph");        
    pageContext.setAttribute("w", w);    
    %>
    <td>
    <select id="web" name="web">
         <c:forEach var="item" items="${w}">
              <option><c:out value="${item}"/></option>
         </c:forEach>
    </select>
    </td>

0
投票

如果您只想动态下拉列表,则可以通过带有逗号分隔列表的<c:set>来设置值,然后使用<c:forEach>代替<c:forTokens delims="," ...>

© www.soinside.com 2019 - 2024. All rights reserved.