2013-07-05 3 views
0

필터링합니다. 시도했지만 작동하지 않습니다. 이름과 이름을 필터링하고 싶지만 두 가지 필드가 있습니다.PrimeFaces PickList에 두 개의 문자열 필드는 두 개의 필드가 primefaces의 선택 목록으로 필터링 가질 수 있는지 궁금

<p:pickList value="#{bean.usersDualModel}" var="user" 
    itemValue="#{user}" itemLabel="#{user.firstname} #{user.name}" 
    converter="user" showSourceFilter="true" showTargetFilter="true" 
    filterMatchMode="contains" > 

    <p:column> 
     <h:outputText value="#{user.firstname} #{user.name}" /> 
    </p:column> 

</p:pickList> 

감사

답변

-1

이 기본 구성 요소 수 없습니다. 당신이 (Primefaces 설명서에서 가져온 예) 사용자 정의 필터를 만들 수 있습니다 그러나 : 물론

<p:pickList value="#{pickListBean.cities}" var="city" itemLabel="#{city}" 
    itemValue="#{city}" showSourceFilter="true" showTargetFilter="true 
    filterMatchMode="custom" filterMatchMode="myfilter"> 
</p:pickList> 

function myfilter(itemLabel, filterValue) { 
//Filter for firstname or name 
//return true or false 
} 

당신은 또한 primefaces 선택 목록을 확장하여 사용자 정의 구성 요소를 만들거나 두 개의 별도 InputText]를 필드를 생성하고 자바 스크립트로 수동으로 필터링을 해고 할 수/jquery.

+0

있습니까? 그 이유는 picklist에 대한 filterMatchMode 특성이 두 가지이며 잘못된 것으로 보입니다. 두 번째 필터 함수는 아마도? 이런 식으로 실수는 없지만 필터 기능은 결코 실행되지 않습니다. –

2

는 사실, 나는 내가 위의 게시 된 코드와 노하우를 작동하고 있기 때문에 가능하다고 생각합니다. 그러나 Javascript 메서드는 두 필드로 설정하기 쉽기 때문에 신속하게 처리 할 수있었습니다. 제안 해 주셔서 감사합니다. 그것은 처음 작동하지 않는

이유는 거기에 선택 목록 필터 Primefaces의 버그와는 공식적으로 패치 아니에요 것입니다. 필터 모드는 내가 입력 한 값이 무엇이든간에 시작 위치에있었습니다.

그래서 내 선택 목록은 여전히 ​​

<p:pickList value="#{bean.usersDualModel}" var="user" 
    itemValue="#{user}" itemLabel="#{user.firstname} #{user.name}" 
    converter="user" showSourceFilter="true" showTargetFilter="true" 
    filterMatchMode="contains" > ... 

입니다 그리고 사용자 정의 패치 노하우가있다. 다음은 보고서의 링크입니다. 문서에 오류가

https://code.google.com/p/primefaces/issues/detail?id=5234