【问题标题】:How to retrieve selected value from selectOneMenu?如何从 selectOneMenu 中检索选定的值?
【发布时间】:2013-09-02 10:06:53
【问题描述】:

我需要从 JSF 中的 selectOneMenu 中获取我选择的值。我使用了一个 ArrayList,我在其中保存了数据。

<h:outputText value="Meslek : " />
    <h:selectOneMenu value="meslek">
        <f:selectItems id="meslek7" value="#{comyon.selectıtem}"/>
</h:selectOneMenu>

这是我的豆子:

@ManagedBean(name = "comyon")
@RequestScoped

public class ComponentYonetim {

private String ad,soyad,cinsiyet;
private String sonuc = "";
private ArrayList<SelectItem> selectıtem = new ArrayList<SelectItem>();
private String donenMeslek = "";

public ComponentYonetim() {
    selectıtem.add(new SelectItem("Asker"));
    selectıtem.add(new SelectItem("Mühendis"));
    selectıtem.add(new SelectItem("Doktor"));
    selectıtem.add(new SelectItem("Öğrenci"));
    selectıtem.add(new SelectItem("Serbest meslek"));
    selectıtem.add(new SelectItem("Polis"));

}

public void yazdir(){
    if(this.ad.isEmpty() || this.soyad.isEmpty()){
        sonuc+="Lütfen boşluk bırakmayınız!";
    }
}

//setters and getters...

}

它正在显示 ArrayList 数据,但我无法从那里获得价值。如何使用 javaBean 从这个 selectOneMenu 中获取值?

【问题讨论】:

    标签: jsf managed-bean selectonemenu


    【解决方案1】:

    您应该阅读这些教程:

    1. Mkyoung selectOneMenu tutorial
    2. Mkyong converter tutorial

    基本上你应该为 selectOneMenu 标签选择值容器。这意味着它应该看起来像:

    <h:selectOneMenu value="#{comyon.selectedItem}">
       <f:selectItems id="meslek7" value="#{comyon.selectıtem}"/>
    </h:selectOneMenu>
    

    如果你需要传递一个对象而不是字符串,你应该使用转换器。查看顶部的链接。

    【讨论】:

    • 感谢您的帮助。链接帮助了我。
    【解决方案2】:

    虽然您在下拉列表中选择了什么,但该项目的值将是第一行

    <h:selectOneMenu value="#{meslek}">
    

    所以,让我们声明一个名为“meslek”的变量和 getter/setter 以使用该值。

    private String meslek;
    

    【讨论】:

      猜你喜欢
      • 2012-08-21
      • 1970-01-01
      • 1970-01-01
      • 2013-01-27
      • 2020-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-03
      相关资源
      最近更新 更多