私は問題があります:
- 地図上にマーカーを配置しました
- データをフィルタリングし、これらのマーカーの一部を配置したい=>jsonをサーバーに送信します
応答があり、すべてのマーカーを削除して新しいマーカーを配置しようとしましたが、gmapの色が灰色で、何も表示されません。ここにいくつかのコードがあります:
var pins; function processFilterResult(data) { pins = data; var myLatlng = new google.maps.LatLng(pins[0].gpsLocationN, pins[0].gpsLocationW); var myOptions = { zoom : 7, center : myLatlng, mapTypeId : google.maps.MapTypeId.ROADMAP }; map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); for(var i=0; i<pins.length; i++) { pins[i] = createMarkers(new google.maps.LatLng(pins[i].gpsLocationN,pins[i].gpsLocationW), pins[i]); } } function initializeGMap() { pins = convertToJSON($("#someId")); var myLatlng = new google.maps.LatLng(pins[0].gpsLocationN, pins[0].gpsLocationW); var myOptions = { zoom : 7, center : myLatlng, mapTypeId : google.maps.MapTypeId.ROADMAP }; map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); for(var i=0; i<pins.length; i++) { pins[i] = createMarkers(new google.maps.LatLng(pins[i].gpsLocationN,pins[i].gpsLocationW), pins[i]); } google.maps.event.addListener(map, 'click', function(event) { });}
明確なマーカー:
function clearOverlays() {
for (var i = 0; i < pins.length; i++ ) {
pins[i].setMap(null);
}
pins = new Array();
}
フィルタリング:
$.post(
"/mediabook/owner/filterMaps.json",
a,
function(data) {
clearOverlays();
processFilterResult(data);
});