首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Primefaces的PickList

使用Primefaces的PickList
EN

Stack Overflow用户
提问于 2012-01-06 19:24:53
回答 1查看 4.6K关注 0票数 0

我正在使用Primefaces的PickList,如下所示:

在xhtml中...

代码语言:javascript
复制
<p:pickList valueChangeListener="#{bean.handlePickList}" onTransfer="submit()" value="#{bean.currentField.PICK_VALUES" id="myPickVals" var="pickVals" itemLabel="#{pickVals}" itemValue="#{pickVals}"/>

在豆子里...

代码语言:javascript
复制
public class MyFields{
    public void handlePickList(ValueChangeEvent e) {
        System.out.println("in handlePickList routine of MyFields.java. ");
    }
}

我收到错误信息...

代码语言:javascript
复制
Property 'handlePickList' not found on type com.myproj.common.MyFields

如何从PickList的目标列表中获取用户选择的值?

EN

回答 1

Stack Overflow用户

发布于 2012-01-21 04:27:52

每个showcase example

提供给列表的值必须放在primeface的DaulListModel中。

在你的bean中:

代码语言:javascript
复制
private DualListModel<yourObjectType> listItems;

public DualListModel<yourObjectType> getListItems() {
   if(listItems == null){
    List<yourObjectType> listItemsSource = new ArrayList<yourObjectType>();
    List<yourObjectType> listItemsTarget = new ArrayList<yourObjectType>();

    ... populate the source and target accordingly ...

    listItems= new DualListModel<yourObjectType>(listItemsSource , listItemsTarget );
   }
    return listItems;  
}  

public void setListItems(DualListModel<yourObjectType> listItems) {  
    this.listItems = listItems;  
}

将listItems放入jsf标记的值属性中

代码语言:javascript
复制
value="#{bean.listItems}"

在提交时,只需访问选定的列表项,如下所示:

代码语言:javascript
复制
getListItems().getTarget()

仅供参考,您可能需要创建并提供一个转换器来处理您想要的对象类型。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8757099

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档