【发布时间】:2012-01-16 15:54:27
【问题描述】:
我正在尝试使用如下代码:
<ice:dataTable id="revisionDocuments" value="#{agendaBean.agenda.revisionsDocuments}" var="revision">
<ice:column>
<ice:inputText value="#{revision.sequenceAdresse}" id="revisionSequenceAdresse#{revision.index}" />
</ice:column>
我想为我的表单字段设置一个不同的 ID。修订对象确实包含一个“索引”字段,表示列表中对象的索引。我想看到它出现在 id 中。然而,什么也没有发生。永远不会解释 #{revision.index} 表达式(永远不会调用修订对象上的 getIndex())。
你会告诉我 JSF 已经做出了类似的东西:
revisionDocuments:0:revisionSequenceAdresse
revisionDocuments:1:revisionSequenceAdresse
revisionDocuments:2:revisionSequenceAdresse
是的,但这只会影响 HTML 中生成的 clientId。代表表单字段的 UIComponent(在 FacesContext 的 ViewRoot 中)具有所有相同的“id”和“clientId”(是的,如果 HTML 包含“revisionDocuments:0:revisionSequenceAdresse”,则您将在 ViewRoot 中找到的“clientId”是revisionDocuments:revisionSequenceAdresse)。
有人可以帮我试试吗?
非常感谢,任何帮助将不胜感激。
【问题讨论】:
标签: jsf-2 uniqueidentifier clientid icefaces-2