我有一个带有inputTexts列表的dataTable:
<h2>
Attributes
</h2>
<h:dataTable
value="#{detailModel.getAfterObjectAttributeSpecifications()}"
var="specification"
styleClass="waiFormTable" >
<h:column>
#{specification.name}:
</h:column>
<h:column>
<h:inputText id="attribute" value="#{detailModel.getAfterObjectAttribute(specification.name)}" disabled="#{detailModel.mode == detailModel.viewMode}"/>
</h:column>
</h:dataTable>
inputText的值不是直接bean字段(detailModel.getAfterObjectAttribute(specification.name))。 如果我更改了值并希望保存,我该怎么办?
感谢您的帮助 弗朗西斯
答案 0 :(得分:1)
你做不到。它必须是不动产或至少Map
值。 E.g。
<h:dataTable
value="#{detailModel.afterObjectAttributeSpecifications}"
var="specification"
styleClass="waiFormTable" >
<h:column>
#{specification.name}:
</h:column>
<h:column>
<h:inputText id="attribute" value="#{detailModel.afterObjectAttributes[specification.name]}" disabled="#{detailModel.mode == detailModel.viewMode}"/>
</h:column>
</h:dataTable>
与
public Map<String, String> getAfterObjectAttributes() {
return afterObjectAttributes;
}