2017-05-05 38 views
0

当我选择更改下拉值时,它不显示选定的值。它继续显示初始值。只有如何显示选定的值? 我的下拉列表: jsp中:我的下拉值总是显示初始值,只有当我选择另一个值也继续显示jsp初始值

<body onload="form1.submit();"> 
    <form name="form1" action="#" > 
    <select id="ddl" name="ddl" onchange="submit();"> 
           <% while (res.next()){%>        
       <option value="<%=res.getString("ID")%>"><%=res.getString("UserId")%><%} 
String Per=request.getParameter("ddl"); 
out.println(Per);%> 
</form> 
</body> 

回答

0

如果形式在页面加载提交,那么它会在一个无限循环中这样做。请不要这样做。这里是一些使用JSTL的演示代码。

<%@ taglib prefix = "c" uri = "http://java.sun.com/jsp/jstl/core" %> 
<html> 
    <body> 
     <form name="form1" action="#" > 
      <select id="ddl" name="ddl" onchange="submit();"> 
       <c:forEach items='1,2,3,4,5' var="current"> 
        <option value="${current}" 
        <c:if test="${current == param.ddl}"> 
         selected 
        </c:if> 
        >${current}</option> 
       </c:forEach> 
      </select> 
     </form> 
     Selected value is ${param.ddl} 
    </body> 
</html> 
+0

嗨@rickz,你能不能请更新我的代码 – Antony

+0

Scriptlets在这个网站上皱起了眉头。如果我发布了一个scriptlet解决方案,那么我会打我的手。如果你想继续使用scriptlet,那么复制我的代码的逻辑。将每个变量赋值放在循环之上。在循环内部,检查res.getString(“ID”)是否等于每个变量。如果找到,则在该选项标签内打印选定的属性。 – rickz