我怎样才能创建JSF切换按钮?
基本上,我需要两个按钮“中”和“out”。 他们基本上是调用同一个托管bean,但由于每一个结果点击一个应该被禁用,另应启用,反之亦然。 如何才能做到这一点? 我应该使用Ajax功能?
我怎样才能创建JSF切换按钮?
基本上,我需要两个按钮“中”和“out”。 他们基本上是调用同一个托管bean,但由于每一个结果点击一个应该被禁用,另应启用,反之亦然。 如何才能做到这一点? 我应该使用Ajax功能?
只要有一个boolean
,你在行动方法和反准确使用属性在属性disabled
的两个按钮的属性,反转。
开球例如:
@ManagedBean
@ViewScoped
public class Bean {
private boolean enabled;
public void toggle() {
enabled = !enabled;
}
public boolean isEnabled() {
return enabled;
}
}
同
<h:form>
<h:commandButton value="Enable" action="#{bean.toggle}" disabled="#{bean.enabled}" />
<h:commandButton value="Disable" action="#{bean.toggle}" disabled="#{not bean.enabled}" />
</h:form>
阿贾克斯在技术上是没有必要的。 随意添加<f:ajax>
这两个按钮,虽然改善了用户体验。
一个@ViewScoped
豆又非常必要的。 一个@RequestScoped
一个将在请求端打砸,在重新下一个请求,特此导致boolean
重新初始化为默认值,因此看似失败后第二次点击的工作,因为JSF将作为对篡改/砍死请求保障的一部分,还要检查在disabled
(和rendered
实际调用操作之前)属性。