【问题标题】:p:selectOneMenu will not print a valuep:selectOneMenu 不会打印值
【发布时间】:2018-03-20 13:56:44
【问题描述】:

为什么我的代码打印这个而不是打印保存在数据库中的学生姓名?

这是我的代码:

public class stdmanagedbean {

    @PostConstruct
    public void init() {
        studentmn mani = new studentmn();
        students = mani.getStudentList();
    }

    public stdmanagedbean() {
    }

    private List<student> students = new ArrayList<>();

    public List<student> getStudents() {
        return students;
    }

    public void setStudents(List<student> students) {
        this.students = students;
    }

填充列表的方法

public student populatestd(ResultSet rs) throws SQLException {

    student st = new student();
    st.setId(rs.getInt("id"));
    st.setName(rs.getString("name"));
    return st;
}

这是我的 xhtml 代码

<body>
    <h:form>
       <p:outputLabel for="list" value="STUDENTS: " />
        <p:selectOneMenu id="list"  value="#{stdmanagedbean.students}" style="width:500px">

             <f:selectItems value="#{stdmanagedbean.students}"/>
             <f:selectItem itemLabel="Select one of these" itemValue="" noSelectionOption="true" />

             </p:selectOneMenu>
    </h:form>

【问题讨论】:

  • 我怎样才能做到这一点,你可以看到我正在使用学生列表
  • 非常感谢你,比利希望它成功了

标签: jsf primefaces


【解决方案1】:

你必须使用一个名为“student”的变量,然后使用itemLabel="student.name",这将显示学生的姓名,itemValue="student"用于定义所选项目的值:

<f:selectItems var="student" value="#{stdmanagedbean.students}" itemLabel="#{student.name}" itemValue="#{student}"/>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多