0

我有这个:

包含的父视图

  • 第一视图
  • 第二视图

第一个视图有一个

<rich:panel id="toRender">

第二个有一个

<a4j:ajax render="toRender">

如何从 firstView 的 secondView 渲染面板?

4

1 回答 1

3

找出它的真实客户端 ID,为其添加前缀:以使其成为绝对客户端 ID,然后使用它来代替。

对于尚未记住客户端 ID 是如何生成的以及所有 JSFNamingContainer是什么的初学者来说,找出真实客户端 ID 的最简单方法是在浏览器中打开页面并查看源代码并找到生成的 HTML 元素感兴趣的 JSF 组件并获取其id属性的值。

它可能看起来像这样

<someHtmlElement id="someId:otherId:lastId">

在这种情况下,您需要使用

<a4j:ajax render=":someId:otherId:lastId">

如果其中一个父 JSFNamingContainer组件(如<h:form>)还没有固定id分配,因此您最终j_idt123会在客户端 ID 中自动生成或其他内容,那么您需要为 JSFNamingContainer组件提供一个固定 ID。

于 2012-06-18T20:00:17.483 回答