我有两个数据表,第二个依赖于一个。我到目前为止所做的是,当我点击第一个表的第二个表时,第二个表显示了所选行的相应值。
我想要做的是首先将第二个数据表放在内部,当我点击一行(第一个表)时,第二个数据表应该出现在下一行,也应该出现在第二个数据表的末尾,第一个数据表应该继续
我不知道该怎么做,请帮忙
<ice:dataTable id="fdf001" border="3" value="#{showDetails.showArr}" var="item">
<ice:column id="column1">
<ice:rowSelector id="IdRowSelector"
selectionListener="#{showDetails.rowSelectionEvent}"
value="#{item.selected}" selectedClass="tableRowSelected" mouseOverClass="tableRowMouseOver">
</ice:rowSelector>
<f:facet name="header">
<ice:outputText style="font-size: 13px; color: blue" value="Machine Name"></ice:outputText>
</f:facet>
<ice:outputText value="#{item.machineName}"></ice:outputText>
</ice:column>
<ice:column id="column2">
<f:facet name="header">
<ice:outputText style="font-size: 13px; color: blue" value="Status"></ice:outputText>
</f:facet>
<ice:outputText value="#{item.status}"></ice:outputText>
</ice:column>
<ice:column id="column3">
<f:facet name="header">
<ice:outputText style="font-size: 13px; color: blue" value="Environment Client Database Instance"></ice:outputText>
</f:facet>
<ice:outputText value="#{item.envClientDbInstance}"></ice:outputText>
</ice:column>
</ice:dataTable>
<ice:dataTable id="subTable" border="2" value="#{showDetails.modArr}" var="sub">
<ice:column id="sub1">
<f:facet name="header">
<ice:outputText style="font-size: 13px; color: blue" value="Artifact Id"/>
</f:facet>
<ice:outputText value="#{sub.artifactId}"/>
</ice:column>
<ice:column id="sub2">
<f:facet name="header">
<ice:outputText style="font-size: 13px; color: blue" value="Group Id"/>
</f:facet>
<ice:outputText value="#{sub.groupId}"/>
</ice:column>
<ice:column>
<f:facet name="header">
<ice:outputText style="font-size: 13px; color: blue" value="Version"/>
</f:facet>
<ice:outputText value="#{sub.version}"/>
</ice:column>
</ice:dataTable>
答案 0 :(得分:0)
答案 1 :(得分:0)
你能做到的。有可能的。 你只需要有类的结构:
class showDetails{
List<Information> showArr; // also create setter/getter
}
class information{
List<SubInfo> showSub;
}
现在你需要做的只是在父数据表的列中创建数据表 并将currentRow.showSub传递给子DataTable。