So ändern Sie google-maps-marker-icon dynamisch
Ich bin mit ajax und php und ich packte alle Punkte aus meiner Datenbank und Plotten Sie auf die Karte. Welche gut funktioniert. Jedoch möchte ich das Symbol ändern der marker-je nachdem, ob der status in der Datenbank auf 100 oder 200 oder 300 für jeden Datensatz. Ich kann nicht scheinen, um etwas zu arbeiten. Hier ist mein code:
if (localStorage.getItem('type2') !== null) {
$(function ()
{
var radius2 = localStorage.getItem("radius2");
var lat2 = localStorage.getItem("lat2");
var long2 = localStorage.getItem("long2");
var type2 = localStorage.getItem("type2");
var city2 = localStorage.getItem("city2");
var rep2 = localStorage.getItem("rep2");
var size2 = localStorage.getItem("size2");
var status2 = localStorage.getItem("status2");
$.ajax({
url: 'http://example.com/Test/www/22233333.php',
data: "city2=" + city2 + "&rep2=" + rep2 + "&status2=" + status2 + "&size2=" + size2 + "&type2=" + type2 + "&long2=" + long2 + "&lat2=" + lat2 + "&radius2=" + radius2,
type: 'post',
dataType: 'json',
success: function (data) {
$.each(data, function (key, val) {
var lng = val['lng'];
var lat = val['lat'];
var id = val['id'];
var name = val['name'];
var address = val['address'];
var category = val['category'];
var city = val['city'];
var state = val['state'];
var rep = val['rep'];
var status = val['status'];
var size = val['size'];
$('div#google-map').gmap('addMarker', {
'position': new google.maps.LatLng(lat, lng),
'bounds': true,
'icon': 'images/hospital.png'
}).click(function () {
$('div#google-map').gmap('openInfoWindow', {
'backgroundColor': "rgb(32,32,32)",
'content': "<table><tr><td>Name:</td><td>" + name + "</td></tr><tr><td>Address:</td><td>" + address + ", " + city + " " + state + "</td></tr><tr><td>Category:</td><td>" + category + "</td></tr><tr><td>Rep:</td><td>" + rep + "</td></tr><tr><td>Status:</td><td>" + status + "</td></tr><tr><td>Size:</td><td>" + size + "</td></tr></table>"
}, this);
});
})
}
});
})
}
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sieht aus wie Sie mit jquery-ui-map?
Ich habe nicht verwendet diese Abstraktion
Aufrufen können Sie die Funktion setIcon - auf eine Markierung können Sie das Symbol auf diese Weise für die Haupt-API
https://developers.google.com/maps/documentation/javascript/reference#Marker
Damit Ihre addMarker Methode gibt eine marker-Instanz, indem Sie den Blick von ihm, so dass, sobald Sie haben, die laufen setIcon
Etwas tun, wie dieses in Ihrem Erfolg-Funktion, mit der in $.jeder.
Status Feld Datenbank
Hoffe, das hilft