【问题标题】:How to update p:selectOneRadio value through component binding如何通过组件绑定更新 p:selectOneRadio 值
【发布时间】:2015-08-13 10:32:29
【问题描述】:

我已经绑定了一个 p:selectOneRadio 组件,如下所示,

<p:selectOneRadio binding="#{bean.maritalStatusRadio}" value="#{bean.maritalStatus}" >
    <f:selectItems value="#{selectItemList.maritalStatusList}" /> 
    <p:ajax event="change" listener="#{bean.handleChangeInMaritalStatus}" />
</p:selectOneRadio>

但我无法从支持 bean 类更新它的值。

SelectOneRadio maritalStatusRadio; 
    public void handleChangeInMaritalStatus() {
            String currentValue =String.valueOf(maritalStatusRadio.getValue());

            if(!currentValue.equals(MARITAL_STATUS_MARRIED)) {
                maritalStatusRadio.setValue(MARITAL_STATUS_MARRIED);

            }

    }`

【问题讨论】:

  • 你是怎么绑定组件的?
  • 向我们展示您的代码,以便我们为您提供帮助。
  • 是这样
  • 如何在 handleChangeInMaritalStatus 监听方法中改变它的值?

标签: jsf primefaces binding selectoneradio


【解决方案1】:

您的侦听器方法不是更改选择值的地方。它用于在用户更改视图中的选定选项时执行您需要的任何操作。

如果您想更改选定的值,您只需更改分配给绑定字段的值,在本例中为 bean.maritalStatus。您可以在许多地方执行此操作(如果需要,包括 youtr 侦听器)。

通常在 preRenderView 方法上是初始化选择默认值的地方。 在你看来:

  <f:metadata>
    <f:event
      type="preRenderView"
      listener="#{bean.initializeForNew}" />
  </f:metadata>

在你的豆子上:

 public void initializeForNew() throws ModelException {
    if (!isPostBack()) {//only on loading
      bean.maritalStatus = getDefaultMaritaStatus();
    }
  }

【讨论】:

    【解决方案2】:
    <p:selectOneRadio id="radioButton" binding="#{nominee.maritalStatusRadio}" value="#{nominee.prospective.maritalStatus}"  disabled="#{disabled}" >
                                        <f:selectItems value="#{selectItemList.maritalStatusList}" />
                                        <p:ajax update="radioButton" event="change" listener="#{nominee.handleChangeInMaritalStatus}" />
                                </p:selectOneRadio>
    It worked for me I was not updating p:selectOneRadio in  p:ajax
    

    【讨论】:

    • 这不是答案,请编辑您的问题以添加此信息。
    • 对不起,这是我的错误,现在我已经编辑了我的问题
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-11
    • 2011-10-27
    • 2018-06-21
    • 1970-01-01
    相关资源
    最近更新 更多