【发布时间】:2015-09-11 13:59:58
【问题描述】:
此问题是对JSF Primefaces Radio Button show/hide/enable a textarea 的跟进 通过将 inputTextArea 包装在 panelGroup 中,从该帖子中解决了两个问题之一,但是我仍然需要弄清楚当状态为 2(=否)时如何在表单加载时不显示 inputTextArea,但仅在正在切换第 2 列下的收音机。
<p:column ...>
<p:selectOneRadio ...>
...
<p:ajax update="reason" />
</p:selectOneRadio>
</p:column>
<p:column headerText="Reason For Attribute Failure">
<h:panelGroup id="reason">
<h:inputTextarea value="#{qAndA.fail_reason}" rendered="#{qAndA.toggle_value == '2'}" />
</h:panelGroup>
<h:outputText value="" rendered="#{qAndA.toggle_value == '1' or qAndA.toggle_value == '3'}" />
<h:outputText value="#{qAndA.fail_reason}" rendered="#{qAndA.toggle_value == '2' or qAndA.toggle_value == '4'}" />
</p:column>
也许状态码有缺陷:
- 0 = 还没有输入
- 1 = 是
- 2 = 不,有原因
- 3 = 不适用
- 4 = 否最终得到解决
我宁愿不必修改状态代码,而是添加另一个中间代码,这样可能会起作用:
- 2 = 显示原因框
- 2.5 表示没有理由
除了修改状态码还有其他选择吗?
【问题讨论】:
-
我阅读了您的个人资料。你从什么时候开始学习 jsf/java 的?我也依靠互联网/ SO来学习(我认为每个开发人员实际上都是自己学习的)。无论如何,我在这条路上有点孤单。也许与一些 SO 用户建立一个 Skype 组或其他东西会很酷。
标签: javascript ajax jsf