jsp - listar - Compruebe si el parámetro existe en el Lenguaje de Expresión
taglib java (3)
Esta pregunta ya tiene una respuesta aquí:
- Evaluar etiquetas JSTL c vacías o nulas 8 respuestas
<c:if test="${param.username}" >
</c:if>
¿Cómo puedo verificar si param.username existe?
Si desea verificar si el parámetro existe, simplemente pruebe si no es nulo, en su caso:
<c:if test="${param.username != null}"></c:if>
Explicación más amplia:
Si quieres verificar:
si tuParam existe / no es nulo:
<c:if test="${param.yourParam != null}"></c:if>
si tuParam no existe / es nulo
<c:if test="${param.yourParam == null}"></c:if>
si suParam no está vacío (no cadena vacía y no nulo)
<c:if test="${!empty param.yourParam}"></c:if>
si suParam está vacío (cadena vacía o nulo)
<c:if test="${empty param.yourParam}"></c:if>
si tuParam se evalúa como "verdadero"
<c:if test="${yourParam}"></c:if>
si suParam evalúa a ''falso'' (cadena que no sea ''verdadera'')
<c:if test="${!yourParam}"></c:if>
Si puedo agregar un comentario ...
Para comprobar si el parámetro de solicitud "nombre de usuario" no existe en la página JSP "a-jsp.jsp", podemos escribir una cláusula "if" en la página "a-jsp.jsp":
<c:if test="${empty param[''username'']>
...
</c:if>
Revisaremos esa cláusula "si" si la URL solicitada es:
http://server/webapp/a-jsp.jsp
o
http://server/webapp/a-jsp.jsp?username=
No lo haremos si la URL solicitada es:
http://server/webapp/a-jsp.jsp?username=foo
Use el cheque not empty
.
<c:if test="${not empty param.username}" >
</c:if>
Editar: si tiene un parámetro de la forma ?username
(sin valor), es más seguro usar ${param.username ne null}