【问题标题】:How can I render another attribute from a p:dataTable of the same row (JSF)?如何从同一行 (JSF) 的 p:dataTable 呈现另一个属性?
【发布时间】:2017-03-30 01:53:36
【问题描述】:

我正在使用 JSF 2.2 和 Primefaces 6.0。我有一个p:dataTable 和不同的p:columns,每一列都有很多行。我希望,每当column1 input 更改,column2 input,在同一行,更新,但是,它不起作用;它不渲染。

这是我的 xhtml 代码:

<p:dataTable value="#{myBean.objectsList}" var="object">
  <p:column headerText="column1">
    <table>
      <tbody>
        <ui:repeat value="#{object.subObjects}" var="object2">
          <tr>
            <td>
              <c:set var="object3" value="#{object2.subObjects}"/>
              <h:inputText id="value1#{myBean.toString(object3)}" value="#{object3.value1}">
                <f:ajax event="change" listener="#{myBean.doSomething}"
                        execute="@this" render="@this"/>
              </h:inputText>
            </td>
          </tr>
        </ui:repeat>
      </tbody>
    </table>
  </p:column>
  <p:column headerText="column2">
    <table>
      <tbody>
        <ui:repeat value="#{object.subObjects}" var="object2">
          <tr>
            <td>
              <c:set var="object3" value="#{object2.subObjects}"/>
              <h:inputText value="#{object3.value2}" disabled="disabled">
                <f:ajax event="change" listener="#{myBean.doSomething2}"
                        execute="@this" render="value1#{myBean.toString(object3)}"/>
              </h:inputText>
            </td>
          </tr>
        </ui:repeat>
      </tbody>
    </table>
  </p:column>
</p:dataTable>

每个object 有许多objects 作为List

【问题讨论】:

标签: jsf primefaces jsf-2 datatable


【解决方案1】:

在第一列 (column1) 的 f:ajax 标记中,您已将 @this 作为属性 render 的值。 相反,请尝试提供组件的 id column2p:dataTableitself 的 id。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-01-31
    • 2016-03-09
    • 1970-01-01
    • 2017-04-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多