【问题标题】:Setting the ID of an inputfield in dynamic columns Richfaces JSF-1.2 when not rendered未呈现时在动态列 Richfaces JSF-1.2 中设置输入字段的 ID
【发布时间】: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 输出的唯一性,例如以当前迭代索引为前缀。再次阅读该链接(以及其中的“另请参阅”链接)。

标签: jsf richfaces jsf-1.2


【解决方案1】:

我已修复它,只需从我的 Column Bean 中添加一个唯一的 Id-Value。

更好的解决方案是这样做: https://stackoverflow.com/a/18358949/5146922

THX BalusC

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-10
    • 1970-01-01
    • 1970-01-01
    • 2014-12-20
    • 1970-01-01
    • 2012-08-29
    相关资源
    最近更新 更多