2016-10-25 2 views
1

지도를 클릭하면 드롭 다운 목록과 버튼이있는 팝업이 표시됩니다. 드롭 다운 목록에서 값을 선택하고 버튼을 클릭하면지도에 표식을 삽입해야합니다. 내가 드롭 다운 버튼을 포함하는 다음 코드를 사용하고 있습니다 :leaflet.js의 팝업에서 버튼 클릭 이벤트

var popup = L.popup() 
.setLatLng([51.5, -0.09]) 
.setContent("<div> <select></select> <button ng-click='addNode()'> Add </button> <button></div") 
.openOn(mymap); 

버튼을 클릭 할 때 addNode() 호출 받고 있지 않습니다. 아무도 그 문제를 알려 주실 수 있습니까? 또한 .setContent 이외의 div 요소를 포함하는 다른 방법이 있습니까? 어떤 제안이라도 도움이 될 것입니다.

답변

1

리플릿 환경에서 문제입니다. leaflet.js를 Angular2와 함께 사용하면 비슷한 문제가 발생합니다. $ compile 메서드를 사용하여 적절한 컨텍스트를 가져옵니다.

https://docs.angularjs.org/api/ng/service/ $

이 게시물이 당신을 도움이 컴파일 : 귀하의 코멘트에 대한 Passing ng-directive to Leaflet L.popup().setContent()

+0

감사합니다. 드롭 다운 목록에서 버튼 클릭 이벤트로 선택한 값을 어떻게 얻어야합니까? – user3693060

+0

다음을 시도했지만 여전히 클릭이 작동하지 않습니다. 그것에 관한 어떤 생각? var str1 = angular.element ("

"); var str2 = $ compile (str1); var result = str2 ($ scope); – user3693060