我有 JSP 页面,在 jsp 页面上我有这个:
<c:when test="${empty findAttributes && param.value1 != null}">
<h1 align="center"><spring:message code="label.msg"/></h1>
</c:when>
而不是param.value1 !=null
我必须使用param.value1 !=""
,但它不起作用,给我一个错误。请帮助使其正确。
正确的方法是使用empty
关键字。这包括空性和空性。
<c:when test="${empty findAttributes && empty param.value1}">
value1
如果根本没有提供参数名称(然后评估为null
不为空字符串),您的条件仍然会失败。仅当提供的参数名称没有提供类似的值时,请求参数才会评估为空字符串value0=foo&value1=&value2=bar
。但是,如果请求参数完全不存在,value0=foo&value2=bar
那么它会评估null
哪个与空字符串不同。
您应该使用empty
JSTL 的运算符而不是使用 !=
<c:when test="${empty findAttributes && empty param.value1}">
从 2.1 规范:
评估空 A: