java – JSTL字符串比较总是返回false
发布时间:2020-12-14 17:47:46 所属栏目:Java 来源:网络整理
导读:我正在尝试字符串比较 c:if test="${dept eq 'account'}"/c:if 但这总是返回false.我检查dept变量的值为“account”.我也试过这样 c:if test="${dept == 'account'}"/c:if 这也返回false. 但是如果我使用像这样的java代码,那么它工作正常 %if(dept.equals("a
我正在尝试字符串比较
<c:if test="${dept eq 'account'}"></c:if> 但这总是返回false.我检查dept变量的值为“account”.我也试过这样 <c:if test="${dept == 'account'}"></c:if> 这也返回false. 但是如果我使用像这样的java代码,那么它工作正常 <% if(dept.equals("account")){ blah blah blah } %> 任何帮助将非常感激. 谢谢 解决方法
症状表明您已经在scriptlet范围内声明它,而不是EL范围. Scriptlets和EL不具有相同的范围. EL使用封面
PageContext#findAttribute() 来解析变量.将dept放在页面,请求,会话或应用程序范围之一中.选择哪一个取决于部门本身的唯一目的.我将从请求范围开始.例如.在一个servlet中:
request.setAttribute("dept",dept); 这样就可以通过${dept}在EL中获得. 毕竟,最好是避免使用scriptlet completely. Java代码属于Java类,而不是在JSP文件中. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |