【问题标题】:Primefaces selectOneMenu filter doesn't workPrimefaces selectOneMenu 过滤器不起作用
【发布时间】:2013-01-27 20:37:09
【问题描述】:

我正在尝试使 selectOneMenu 正常工作。我已经设法让它显示带有过滤器输入的选择,但每次我尝试在那里写东西时,一切都会消失。

这是视图中的代码:

<p:selectOneMenu style="width:160px" label="Supervisor" filter="true" filterMatchMode="startsWith" converter="userConverter">
    <f:selectItem itemLabel="Choose..." itemValue="" />
    <f:selectItems value="#{userBean.supervisors}" var="user" itemLabel="#{user.surname} #{user.name}" itemValue="#{user}"/>
</p:selectOneMenu>

userBean.supervisors 传递的值由以下人员提供:

public List<User> getSupervisors() {
    if (supervisors == null) {
        supervisors = userDao.getUsersByRole(Enums.Roles.SUPERVISOR.getValue());
    }
    return supervisors;
}

而且转换器很简单:

@FacesConverter(forClass = User.class, value="userConverter")
public class UserConverter implements Converter {

@Override
public String getAsString(FacesContext context, UIComponent component, Object value) {
    if(value == "") return null;
    // Convert ProjectDetail to its unique String representation.
    User user = (User) value;
    String idAsString = String.valueOf(user.getUserId());
    return idAsString;
}

@Override
public Object getAsObject(FacesContext context, UIComponent component, String value) {
    // Convert unique String representation of ProjectDetail back to ProjectDetail object.
    Long id = Long.valueOf(value);
    UserDAO userDao = new UserDAO();
    User user = userDao.getUser(id);
    return user;
}
}

如果我将 p:selectOneMenu 更改为 p:selectCheckboxMenu 过滤并且一切正常。

【问题讨论】:

    标签: java primefaces selectonemenu


    【解决方案1】:

    检查这个 css 以显示结果:

    .ui-selectonemenu-items-wrapper{
        height: auto !important;
    }
    

    【讨论】:

      猜你喜欢
      • 2016-06-29
      • 2014-07-07
      • 1970-01-01
      • 2014-04-05
      • 2014-08-09
      • 1970-01-01
      • 2012-05-30
      • 2011-09-29
      • 1970-01-01
      相关资源
      最近更新 更多