0

我正在使用primefaces的selectOneMenu,并且我正在尝试在从其他selectOneMenu的销售值之后更新一个selectOneMenu。使用此代码,一切正常,我在 selectOnemenu 中获得了更新值。但是问题是,当我从更新的 selectOneMenu 中选择值时,单击按钮后未反映在 bean 菜单中,我
在此代码中的 bean 类中得到空值,我试图在从 selectOneMenu 中选择值后更新 id 为“deviceosName”的 selectOneMenu id 为“manufectureName”。但是在从 id 为“deviceosName”的 selectOneMenu 中选择值后,没有反映在 bean 类中。我无法弄清楚问题所在。有人可以帮助我吗?

<h:form>
        <p:growl id="messages" showDetail="true" autoUpdate="true" />

        <p:panel id="os_version_panel" header="Os Version">
            <h:panelGrid columns="3" title="Os Version"
                style="width:40%;height:20%;padding:10%;padding-left:30%">

                <h:outputLabel for="manufectureName" value="Manufecture Name:*"
                    style="float:right;font-size:15px;width:200px" />
                <p:spacer width="20" height="50" />

                <p:selectOneMenu id="manufectureName"
                    value="#{deviceRegistration.selectedManufacture}" effect="fade"
                    converter="deviceManufactureConverter" style="width:200px">
                    <f:selectItem itemLabel="Select One" itemValue="" />
                    <f:selectItems value="#{deviceRegistration.manufactureNameList}"
                        var="manufacturer" itemLabel="#{manufacturer.manufacturersName}"
                        itemValue="#{manufacturer}" />

                    <p:ajax update="deviceosName"
                        listener="#{deviceRegistration.updateOSName}" />
                </p:selectOneMenu>

                <h:outputLabel for="deviceosName" value="Device OS Name:*"
                    style="float:right;font-size:15px;width:200px" />
                <p:spacer width="20" height="50" />


                <p:selectOneMenu id="deviceosName"
                    value="#{deviceRegistration.selectedOsName}" effect="fade"
                    converter="deviceOsNameConverter" style="width:200px">
                    <f:selectItem itemLabel="Select One" itemValue="" />
                    <f:selectItems value="#{deviceRegistration.osNamesList}"
                        var="name" itemLabel="#{name.osName}" itemValue="#{name}" />
                </p:selectOneMenu>

                <f:facet name="footer">
                    <p:spacer width="20" height="80" />
                    <p:commandButton id="addOsVersion" value="Add OS Version"
                        update="messages" process="os_version_panel"                    
                        actionListener="#{deviceRegistration.addOsVersion}"
                        style="float:right;" />
                </f:facet>
            </h:panelGrid>
        </p:panel>
    </h:form>
4

0 回答 0