林我尝试了一下使用JSF,方案如下:变化呈现属性
我有一个会话范围的托管bean
@ManagedBean(name = "rand")
@SessionScoped
在那里我已经声明如下(其他中事情):
private UIOutput uiOutput;(plus getter and setter)
在我的Facelets页面,我有
<h:outputLabel for="userGuess" binding="#{rand.uiOutput}"
value="#{rand.listSize}" rendered="false"/>
还有就是对网页上的按钮,并在除其他事项外的按钮的操作方法,我有
this.uiOutput.setRendered(true);
但它似乎没有工作,该元素将不会被渲染。
如果以渲染方式启动它并更改属性(将其设置为true或false),它将起作用。 我怀疑它与这个事实有关,起始为未呈现的元素未绑定到我的托管bean中的uiOutput对象。我如何使它在这种情况下工作?
这将是更好的绑定到一个bean属性︰'rendered =“#{rand.someBoolean}”' – McDowell
我完全同意,并已测试,它的工作原理,我只是试验绑定到一个组件,而不是到一个价值。 – B11
okie毫无疑问问题很好解释。但我想知道你想要检查“我们如何使用托管bean呈现”或“UIOutput的功能”? – Freak