2017-03-28 5 views
0

내 입력란의 제안 사항을 표시하려면 ws rest를 기반으로하는 동적 자동 완성을 사용해야합니다. 내가 사용했지만 작동하지 않았다. 제안 목록을 업데이트하지 않았다. 예 :Orbeon Forms에서 동적 자동 완성을 구성하는 방법은 무엇입니까?

<fr:autocomplete 
     id="control-3-control" 
     appearance="minimal" 
     labelref="@label" 
     resource="http://127.0.0.1/api/ws/pays/all" 
     bind="control-3-bind"> 

    <xf:label ref="$form-resources/control-3/label"/> 
    <xf:hint ref="$form-resources/control-3/hint"/> 

    <xf:alert ref="$fr-resources/detail/labels/alert"/> 
    <xf:itemset ref="./_"> 
     <xf:label ref=".//libelle"/> 
     <xf:value ref=".//id"/> 
    </xf:itemset> 
</fr:autocomplete> 

그리고이 스크린 샷입니다 :

enter image description here

답변

0

사용자가 입력 한 값을 기준으로 "필터링"이렇게는 자동 완성 호출하는 서비스의 책임이다. 그러나 필드의 현재 값을 제공하지 않으면이 작업을 수행 할 수 없습니다. 이를 위해 URL 어딘가에서 {$fr-search-value}을 사용하십시오. 같은 뭔가 :

http://127.0.0.1/api/ws/pays/all?search={$fr-search-value} 

그리고 물론

, 다음 서비스 계정에 search 요청 매개 변수의 값을 취할 필요가있다. 자동 완성 구성 요소는 사용자가 필드에 입력 할 때 필요에 따라 자동으로 다시 서비스를 호출합니다.

이렇게하면 전체 값 집합을 Orbeon Forms로 반환하지 않고도 큰 데이터 집합에서 검색 할 수 있습니다.

+0

답변을 주셔서 감사합니다. http://127.0.0.1/api/cpAutocomplete/findCountry/{$fr-search-value}와 같은 URL에서 수정되었으므로 자동 완성 필터링이 제대로 작동하지만 클릭 할 때 검색된 항목에서 필드가 1 초 후에 채워지고 필드가 비어있게됩니다 (값을 선택하지 않음). 이 행동에 대해 생각 해보시겠습니까? 무엇을 추가해야합니까? – Lebki

+0

서비스에 대한 어떤 전화가 걸려 있는지 확인할 수 있습니까? 사용자가 값을 선택한 후 해당 값으로 서비스가 호출되고 있고 서비스에서 아무 것도 반환하지 않는지 궁금합니다. – avernet

+0

Evernet에 감사드립니다. – Lebki