根据条件更改显示标签表中的数据

时间:2014-07-25 08:48:21

标签: jsp servlets struts2 jstl displaytag

我正在使用display-tag

显示数据
<display:table  export="true" keepStatus="true" sort="external"
                id="CUSt" class="table_1_outer" style="width:98%" 
                name="requestScope.results.rows"  pagesize="25">

其中结果是RowSetDynaClass个对象。

我有两个字段,如

<display:column property="CUST_CREATION_FLAG" title="Cust Verification" sortable="false" />
<display:column property="ACC_CREATION_FLAG" title="SB Acc. Verification" /> 

这些字段的值为 Y N

我的要求是,当我们有值N时,那个值应该以红色显示。

我尝试使用JSTL

做这样的事情
<c:if test="${CUSt.CUST_CREATION_FLAG eq dynaBeans[${results.CUST_CREATION_FLAG}].value }">
    <display:column property="CUST_CREATION_FLAG" title="Cust 
             Verification" style="color:red"  sortable="false"  />

但我收到了以下错误

"${CUSt.CUST_CREATION_FLAG eq dynaBeans[${results.CUST_CREATION_FLAG}].value }" 
contains invalid expression(s): javax.el.ELException: Error Parsing: 
${CUSt.CUST_CREATION_FLAG eq dynaBeans[${results.CUST_CREATION_FLAG}].value }

1 个答案:

答案 0 :(得分:0)

您可以尝试OGNL

<s:if test="#attr.CUSt.CUST_CREATION_FLAG eq dynaBeans[#attr.results.CUST_CREATION_FLAG].value">
   <display:column property="CUST_CREATION_FLAG" title="Cust Verification" style="color:red"  sortable="false"  />
</s:if>