我在会话中设置了一个会话范围对象,我想使用JSTL Ternary运算符在我的一个按钮中添加一个禁用属性. getPermission是当前登录用户的权限映射,但我不确定为什么我在JSP进入此JSP时遇到错误
getPermission是当前登录用户的权限映射,但我不确定为什么我在JSP进入此JSP时遇到错误未终止的c:out标记.
<button type="button" id="addButton" <c:out value="${empty sessionScope.voUserInfo.getPermission.ADD_ITEM ? "disabled='disabled'" : ''}"/> > ADD </button>价值中的第一个双引号是太早破坏价值.您应该仅使用单引号来表示EL中的字符串,而不是双引号.您应该仅使用双引号来表示HTML属性值.
<button id="add" <c:out value="${empty var ? 'disabled="disabled"' : ''}"/>>
(请不要注意Stackoverflow代码语法高亮显示,它不能正确识别taglibs / EL,以上是合法有效的)
或者,当您使用JSP 2.0或更新版本时,只要不存在XSS风险,您甚至可以将其放在外面(由于您打印的是服务器控制的值,因此不是这种情况).
<button id="add" ${empty var ? 'disabled="disabled"' : ''}>