我有以下标记:
<html:text styleClass="span2" property="groupManagerId" styleId="groupManagerId" maxlength="19" size="10" readonly="" />
正常工作。当我添加样式属性时:
<html:text styleClass="span2" style="display:<%=(""+FVConstants.NORMAL).equalsIgnoreCase(groupData.getGroupType())?"none":" "%>;" property="groupManagerId" styleId="groupManagerId" maxlength="19" size="10" readonly="" />
我收到以下错误:
org.apache.jasper.JasperException: /pages/POS0085_group_modify.jsp(95,61) Unterminated <html:text tag
我在标签和div标签下有相同的属性,它可以正常工作。我改为
<%String displayValue=(""+FVConstants.NORMAL).equalsIgnoreCase(groupData.getGroupType())?"none":" ";
String displayAttr="display:"+displayValue; %>
和
<html:text styleClass="span2" style="display:<%=displayValue%>" property="groupManagerId" styleId="groupManagerId" maxlength="19" size="10" readonly="" />
它有效。第一次尝试出了什么问题?有更好的方法吗?
答案 0 :(得分:0)
当初学者尝试使用?
运算符来计算字符串时,通常会发生此错误。评估的表达式应该用这样的括号包围
<html:text styleClass="span2" style="display:<%=((""+FVConstants.NORMAL).equalsIgnoreCase(groupData.getGroupType())?"none":" ")%>;" property="groupManagerId" styleId="groupManagerId" maxlength="19" size="10" readonly="" />