Вот как это будет работать для h:dataTable
при условии, что мы всегда добавляем в таблицу:
<h:form>
<h:panelGroup id="animatedTableGroup">
<h:dataTable id="animatedTable" value="#{myBean.rows}" var="row">
<h:column>
<h:outputText value="#{row}"/>
</h:column>
</h:dataTable>
<rich:jQuery timing="onload"
selector="#animatedTable tr:last" query="fadeOut('slow')"/>
<rich:jQuery timing="onload"
selector="#animatedTable tr:last" query="fadeIn('slow')"/>
</h:panelGroup>
<a4j:commandButton value="Add row"
action="#{myBean.addRow}" reRender="animatedTableGroup"/>
</h:form>
И боб:
public void addRow() {
rows.add(new Date().toString());
}
public List<String> getRows() {
return rows;
}
Если вы хотите вставить в выбранную позицию в таблице, то лучше использовать rich:extendedDataTable
и использовать что-то вроде этого в качестве селектора:
<rich:jQuery timing="onload"
selector="#animatedTable tr.rich-sdt-row-selected" query="..."/>