마커가있는 Google지도를 채우려고합니다. 각 마커에 대한 정보는 다음 배열에 포함되어 있습니다.마커로 Google지도 채우기 JSON
[{"id":"1","name":"toler","lng":"110.33929824829102","lat":"-7.779369982234709","created_at":"2014-02-21 16:19:28","updated_at":"2014-02-21 16:19:28"},{"id":"2","name":"hallo :)","lng":"110.36865234375","lat":"-7.797738383377609","created_at":"2014-02-21 16:19:49","updated_at":"2014-02-21 16:19:49"}]
그러나 내지도에는 마커가 표시되지 않습니다. 내 자바 스크립트 에서이 코드를 사용하고 있습니다 :
getLocations();
function getLocations() {
alert('hello');
$.ajax({
type: "GET",
url: "http://localhost:8888/public/test",
dataType: "jsonp",
success: function(json){
$.each(json, function(i, entry){
PlotMarker(json[i].lat, json[i].long);
});
},
error: function(err){
console.log(err);
}
});
}
function PlotMarker(lat, long){
var marker = new google.maps.Marker({
position: new google.maps.LatLng(lat, long),
map: map,
draggable: false,
animation: google.maps.Animation.DROP
});
markerLocations.push(marker);
}
이 문제를 해결할 수있는 방법이 있습니까? 이 URL로 전화하기
http://localhost:8888/public/test
은 위에 표시된 JSON을 반환합니다.
도움을 주시면 감사하겠습니다.
감사합니다.
편집 :
function initialize() {
var markers = [];
var latLng = new google.maps.LatLng(-7.8,110.3666667);
var map = new google.maps.Map(document.getElementById('map-canvas'), {
zoom: 13,
center: latLng,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
}
어디에서'gmap'을 선언 했습니까? – Andy
초기화 기능을 의미합니까? – patrick
''var'로'초기화 '에서'gmap'을 선언했다면 다른 함수는 그것을 볼 수 없습니다. 'gmap'과 같은 함수 밖에서'gmap'을 선언하고'initialize' 내부에서'gmap = whatever'를 수행하십시오. – Andy