0

我需要帮助:当用户单击输入复选框时,我必须创建一个显示标记的地图。

例如:我点击“酒店”,我只看到酒店。我不再点击酒店,地图上的标记消失

编码:

<script type="text/javascript">

(function() {
window.onload = function(){




var latlng = new google.maps.LatLng(37.8530665, 15.287916300000006); 
var options = { 
zoom: 14,
center: latlng,
backgroundColor: '#fff',
mapTypeId: google.maps.MapTypeId.ROADMAP
}; 



var map = new google.maps.Map(document.getElementById('map_canvas'), options);

var markers = new Array(); 

$(".chek").click(function() {

if($(this).is(':checked')) {

var id_checkbox = $(this).val();

$.post("ajax.php?page=mapHome",{ id_checkbox:id_checkbox }, function(data) {    
for (i=0; i < data.marker.length; i++) { 

var marker = new google.maps.Marker({
position: new google.maps.LatLng(data.marker[i].latitude, data.marker[i].longitude), 
animation: google.maps.Animation.DROP,
map: map,
title: data.marker[i].nome,
icon: data.marker[i].marker
});

markers[i] = marker;
markers[i].id_cat = data.marker[i].id_cat; 

}// for
},"json");//json
} else {

//hide markers on the map
for (i = 0; i < markers.length; i++) {
if(id_checkbox == markers[i].id_cat) {
markers[i].setMap(null);
}
}


}




});


}
})();
</script>

我通过 json 进行查询并显示结果。

4

1 回答 1

0

我看到setMap(null); 但没有setMap(map);

于 2012-04-04T18:24:26.820 回答