Biostall によって提案された疑似コードを試してみると、これが私が実装したものです。
$.ajax({
url: '*URL*',
type: "POST",
data: ({value : *value*}),
dataType: "json", //retrieved Markers Lat/lng in Json, thus using this dataType
success: function(data){
//Removing already Added Markers//////////
for(var i=0; i < markers.length; i++){
markers[i].setMap(null);
}
markers = new Array();
//////////////////////////////////////////
// Adding New Markers////////////////////
for (var i = 0, len = data.length; i < len; ++i) { // Iterating the Json Array
var d = data[i];
var lat = parseFloat(d.lattitude);
var lng = parseFloat(d.longitude);
var myLatlng = new google.maps.LatLng(lat,lng);
var marker = {
map:map,
position:myLatlng // These are the minimal Options, you can add others too
};
createMarker(marker);
}
}
}
);
注:マーカーの配列がこの ajax 呼び出しに送信される場合、php 関数 json_encode() でエンコードされた json である必要があります。したがってdataType: "json"
、ajax 呼び出しパラメーターで述べたように使用できます。
これは私にとってはうまくいきました。これが役立つことを願っています。