2017-11-21 3 views
0

내 전단지지도 뷰어에 search box을 추가하려고 해요 :캐치 리플릿 검색 이벤트

내가 브레이크 포인트를 넣었습니다있는, events에 검색 기능을 실행하기 위해 사용자 지정 코드를 추가 할 필요가
var controlSearch = new L.Control.Search({ 
    layer: new L.LayerGroup() 
}).on('search_expanded', function() { 
    console.log('search_expanded!') 
}).on('popupopen', function(e) { 
    var marker = e.popup._source.feature.properties.markerid; 
}).addTo(map); 

. 그러나 검색 버튼을 누르거나 텍스트를 입력하면 코드가 내 이벤트에 도달하지 않습니다.
지도를 사용하여 면적을 표시하고 있습니다. 검색은 사용자 정의 속성을 기반으로 영역을 식별하고 사용자에게 식별하기 위해 강조 표시해야합니다. 따라서 검색은 위치 또는 그와 유사한 것이 아니라 표시되는 항목의 사용자 정의 속성에 적용되어야합니다. 페이지가 대부분 jQuery와 함께 작동하지만 각도는 없습니다.

이벤트 목록을 찾을 수 없습니다.
그래서 사용자가 입력 한 이벤트를 어떻게 catch합니까?

+1

당신이 넣어 검색 expande 이벤트가 잘못된 것입니다. ('search : expande')를 입력하면 작동합니다. – SamaBalaYam

+0

@AbidNawaz 감사합니다. 검색 : 확장되었습니다. 사용자가 입력 한 이벤트가 있습니까? 또는 그 순간에 만들어진 텍스트 상자에 추가해야합니까? – MrFox

+1

에 따르면 리플릿 컨트롤 검색 설명서에 따르면 사용자 유형에 해당 이벤트가 없으므로 텍스트 상자에 추가 할 수 있습니다. – SamaBalaYam

답변

1

당신은 입력 상자를 검색하기 위해이 같은 이벤트를 추가 할 수 있습니다

var controlSearch = new L.Control.Search({ 
    layer: new L.LayerGroup() 
}).on('search:expanded', function() { 
    this._input.onkeyup = function(){ 
    console.log(this.value) 
    } 

}).addTo(map); 
관련 문제