0

我的wep页面中有一个下拉列表,它是:

 <h:form>
        <h:panelGrid columns="2">
            <h:outputText value="Açılacak hesabın para birimi:"></h:outputText>
            <h:selectOneMenu value="currency" >
                <f:selectItem itemValue="choose" itemLabel="Seçiniz..." />
                <f:selectItem itemValue="tl" itemLabel="Türk Lirası(TL)" />
                <f:selectItem itemValue="usd" itemLabel="Amerikan Doları(USD)" />
                <f:selectItem itemValue="euro" itemLabel="Euro" />
            </h:selectOneMenu>

            <h:outputText value="Açılacak hesabın cinsi:"></h:outputText>

            <h:selectOneMenu value="vade" >
                <f:selectItem itemValue="choose" itemLabel="Seçiniz..." />
                <f:selectItem itemValue="vadesiz" itemLabel="Vadesiz mevduat hesabı" />
                <f:selectItem itemValue="vadeli" itemLabel="Vadeli Mevduat Hesabı" />
            </h:selectOneMenu>
            <h:commandButton value="Onayla" action="#{events.createAccount}" ></h:commandButton>
        </h:panelGrid>           
    </h:form>

然后通过单击按钮,我将转到 Events.java bean 并在那里处理一些信息。但我需要函数 createAccount() 中这些下拉列表的值。这是我的事件 bean

@Named(value = "events")
@Dependent
public class Events {

/**
 * Creates a new instance of Events
 */
public Events() {
}

public void createAccount(){

}
}

我怎样才能做到这一点?

谢谢

4

1 回答 1

1

这是一个非常基本的 JSF 点,在您的selectOneMenu组件中,在您的托管 bean 中定义一个值:

<h:selectOneMenu value="#{events.currency}" >
      <f:selectItem itemValue="choose" itemLabel="Seçiniz..." />
      <f:selectItem itemValue="tl" itemLabel="Türk Lirası(TL)" />
      <f:selectItem itemValue="usd" itemLabel="Amerikan Doları(USD)" />
      <f:selectItem itemValue="euro" itemLabel="Euro" />
</h:selectOneMenu>

现在在您的托管 bean 中,您只需定义一个属性currency

private String currency;

public String getCurrency() {
    return currency;
}
public void setCurrency(String currency) {
    this.currency = currency;
}

现在在您的Events托管 bean 的方法中createAccount,您只需使用定义的currency值。
有关更多示例和教程,请参阅此处:https ://stackoverflow.com/tags/jsf/info

于 2013-07-04T09:34:46.837 回答