Saltar al contenido

Valor seleccionado para el menú desplegable JSP usando JSTL

Solución:

En HTML, la opción seleccionada está representada por la presencia del selected atributo en el <option> elemento así:

<option ... selected>...</option>

O si es estricto en HTML / XHTML:

<option ... selected="selected">...</option>

Por lo tanto, solo tiene que dejar que JSP / EL lo imprima condicionalmente. Siempre que haya preparado el departamento seleccionado de la siguiente manera:

request.setAttribute("selectedDept", selectedDept);

entonces esto debería hacer:

<select name="department">
    <c:forEach var="item" items="${dept}">
        <option value="${item.key}" ${item.key == selectedDept ? 'selected="selected"' : ''}>${item.value}</option>
    </c:forEach>
</select>

Ver también:

  • ¿Cómo puedo conservar los valores de los campos de formulario HTML en JSP después de enviar el formulario a Servlet?

Probé la última respuesta de Sandeep Kumar, y encontré mucho más simple:

<option value="1" <c:if test="${item.key == 1}"> selected </c:if>>

Si no le importa usar jQuery, puede usar el siguiente código:

    <script>
     $(document).ready(function(){
           $("#department").val("${requestScope.selectedDepartment}").attr('selected', 'selected');
     });
     </script>


    <select id="department" name="department">
      <c:forEach var="item" items="${dept}">
        <option value="${item.key}">${item.value}</option>
      </c:forEach>
    </select>

En su Servlet agregue lo siguiente:

        request.setAttribute("selectedDepartment", YOUR_SELECTED_DEPARTMENT );
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *