【发布时间】:2015-07-30 12:09:47
【问题描述】:
我有动态列。有些有输入字段,有些则没有。 如果我不想渲染,为什么还要设置 Inputfield 的 Id?
<rich:columns value="#{columnBean.columns}" var="column" index="ind" id="#{column.id}">
<f:facet name="header">
<h:inputText id="#{column.inputFilterId}" value="#{otherBean.filterValue[column.filterBy]}" onkeyup="filterKeyUp(event)" onclick="Event.stop(event);" />
</f:facet>
<h:outputText value="#{columnBean.lineItemHandler[line]}" rendered="#{columnBean.curCol[column.id]}"/>
</rich:columns>
我正在使用 JSF 1.2 和 Richfaces 3.3.3 Final
【问题讨论】:
-
为什么不照常使用固定值?
-
我有一个数据表,我想为我的用户提供更改列顺序的选项。我不明白为什么我需要一个未呈现的 Textfiled 中的 ID。解释器是否需要这个来找到正确的元素,然后不在 HTML 中呈现?
-
HTML DOM 树不需要它。 JSF 组件树需要它。现在它将评估为 null 这确实是无效的。同样,您为什么不像往常一样使用固定值?也许是阅读的食物:stackoverflow.com/questions/18358604/…
-
啊好吧,你的意思是我可以使用一个固定的ID,每个列都是唯一的?我想我得试试这个。
-
嗯?只有一个组件。像往常一样设置一个固定的ID。例如。
id="foo"。 JSF 会担心生成的 HTML 输出的唯一性,例如以当前迭代索引为前缀。再次阅读该链接(以及其中的“另请参阅”链接)。