【问题标题】:How to use ajax in JSF inputtextbox to update h:selectOneRadio?如何在 JSF inputtextbox 中使用 ajax 来更新 h:selectOneRadio?
【发布时间】:2012-08-09 14:17:37
【问题描述】:

我在开发中使用了 JSF 2.0、richfaces 和 a4j。我有一个单选按钮组,由 3 个单选按钮组成,每个单选按钮旁边都有一个输入文本框,如下图所示:

radio button A | input textbox A
radio button B | input textbox B
radio button C | input textbox C

每当关注文本框时,是否可以使用 ajax 来更新单选按钮选择?例如。当专注于输入文本框 B 时,将选择单选按钮 B。我可以知道如何做到这一点吗?

【问题讨论】:

  • 为什么选择 ajax 而不是 JavaScript(对于客户端来说更轻更软,对开发者来说更​​容易维护)?

标签: ajax jsf-2 richfaces


【解决方案1】:

有很多方法可以做到这一点,首先使用普通的javascript,然后在jsfrichfaces 组件上使用ajax。 您可以尝试使用嵌套在您的h:inputText 中的a4j:ajax,并在您的textbox 上有focus 时触发它。

<h:selectOneRadio value="#{bean.value}" id="radio" />
<h:inputText id="input" value="#{bean.textValue}" >
    <a4j:ajax event="onfocus" render="radio" action="{bean.setRadioSelected}"/>
</h:inputText>

在操作方法上,将选定单选的值设置为 true。 希望这可以帮助。

【讨论】:

  • 属性动作不属于a4j:ajax,我必须使用监听器。而且我已将事件 onfocus 更改为单击,因为 inputText 不支持它。我必须用 panelGroup 包装 selectOneRadio,因为每当单击文本框时,单选控件就会消失。
  • 我的错,从 RF 3 到 RF 4 仍然很困惑。幸好你想通了。 :)
猜你喜欢
  • 1970-01-01
  • 2012-12-30
  • 1970-01-01
  • 1970-01-01
  • 2012-06-13
  • 2012-11-15
  • 1970-01-01
  • 2012-09-24
  • 2011-10-07
相关资源
最近更新 更多