selectOneMenu调用值设置程序两次

时间:2018-06-28 13:16:34

标签: jsf primefaces

我有一个selectOneMenu,它的问题是它两次更新了值!第一次使用我选择的值,此后立即使用以前的值更新值!

<android.support.v7.widget.Toolbar
        android:id="@+id/my_week_toolbar"
        android:layout_width="match_parent"
        android:layout_height="?android:attr/actionBarSize"
        android:background="?attr/colorPrimary"
        android:minHeight="?attr/actionBarSize"/>
无论如何,

是否有这项工作,我试图进行跟踪,它实际上两次调用了setter!

1 个答案:

答案 0 :(得分:0)

@Holger在评论中是正确的。 p:selectOneMenu不需要侦听器实际处理值更改。一个人应该只使用侦听器在Bean中进行其他类型的交互。

在这种情况下,固定代码应如下所示:

<p:selectOneMenu id="qupdate" value="#{object.pquantity}">

    <f:selectItem styleClass="form-control"
                  itemLabel="-- SELECT QUANTITY -- "
                  itemValue=""
                  noSelectionOption="true" />

                  <f:selectItems value="#{selectonemenu.quantoptions}" 
                                 var="f"
                                 itemLabel="#{f}"
                                 itemValue="#{f}" />
</p:selectOneMenu>

有关应该如何使用ajax侦听器的更多信息,请参阅to this question