我在三个不同的模块中使用相同的jsp。因为这三个模块共包含近10到12列。所以我在三个模块中使用相同的jsp。 我的问题是在display:table的内部使用“KeepStatus = true”。每个模块都有唯一的UID名称(由于KeepStatus属性),所以我声明了运行时值。它工作正常,但在一个模块中,值呈现在表的顶部。其他模块没有问题。
<display:table name="${disputeForm.ratingInstanceList}" uid="${diplayTableUID}" sort="list" keepStatus="true"
requestURI="${diplayTableReqURI}" excludedParams="method" decorator="com.ford.mpl.superg.decorator.DisputeRatingInstanceTableDecorator">
<%@include file="/jsp/include/displaytag.jsp"%>
<ui:resultsPerPage />
<logic:notEqual name="disableActions" value="Y">
<display:column property="actions" title="${Actions}" sortable="false" class="textAlignC inlineMenuTriggerWrapper" />
<display:column property="checkbox" title="${disputeInstanceHeaderCheckbox}" sortable="false" />
</logic:notEqual>
<c:if test="${diplayTableUID.disputeNumber != null}">
<display:column property="disputeNumber" title="${disputeNumberForLabel}" sortable="true"/>
</c:if>
<display:column property="disputeAnalystCDSID" title="${WQAnalyst}" sortable="true"/>
<display:column title="${Status}" sortable="true">
<c:if test="${diplayTableUID.disputeStatus != null}">
<bean:message bundle="i18n" key="${diplayTableUID.disputeStatus}" />
</c:if>
</display:column>
<display:column property="disputeLastUpdatedCSDID" title="${LastUpdatedCDSID}" sortable="true"/>
<display:column property="disputeLastUpdateDate" title="${LastUpdatedDate}" sortable="true"/>
</display:table>
<bean:define id="diplayTableUID" name="processRatingDisputeForm"/>
<%@include file="ratingElementInstances_All.jsp"%>
<bean:define id="diplayTableUID" name="returnPointsRatingDisputeForm"/>
<%@include file="ratingElementInstances_All.jsp"%>
<bean:define id="diplayTableUID" name="submitRatingDisputeForm"/>
<%@include file="ratingElementInstances_All.jsp"%>
为什么我在bean标签中使用整个表单意味着什么。我需要一些值才能通过对象。例如,
<c:if test="${diplayTableUID.disputeNumber != null}">
答案 0 :(得分:0)
如果我理解正确,您希望能够访问当前的“行”对象,但由于它具有动态ID,因此您会被卡住。以下应该有效:
<c:if test="${pageScope[diplayTableUID].disputeNumber != null}">
您还可以在开始标记之后定义别名,并在以下后使用此别名:
<c:set var="currentRow" value="${pageScope[diplayTableUID]"/>
...
<c:if test="${currentRow.disputeNumber != null}">
答案 1 :(得分:0)
使用'htmlId'
作为客户端的表ID。