この関数はjavascriptにあり、すべてのマーカーと各マーカーのポップアップ情報を設定します。
var infowindow = new google.maps.InfoWindow();
for (var i = 0; i < arraylng.length - 1; i++) {
var marker = new google.maps.Marker({
position: new google.maps.LatLng(arraylng[i], arraylat[i])
});
var infowindow = new google.maps.InfoWindow({
content: " "
});
makeInfoWindowEvent(map, infowindow, marker, i);
markers.push(marker);
}
function makeInfoWindowEvent(map, infowindow, marker, i) {
google.maps.event.addListener(marker, 'click', function() {
alert(arraylat[i]); // working nice
alert(arraylng[i]); // working nice
infowindow.setContent(arraylng[i] + ", " + arraylat[i]);
infowindow.open(map, marker);
});
}
}
私の質問は、データベースからアドレスを返すWebサービスからメソッドを追加するにはどうすればよいですか?これがコードです。
[WebMethod]
public string GetAddressMarker(string lat, string lng) {
string address = "";
var plac = GoogleapiBO.getClinicByLatLng(lat, lng);
address = plac.address + ", " + plac.city;
address = "'" + address + "'";
return address;
}
必要なのは、このメソッドからアドレスを取得し(メソッドが必要string lat=arraylat[i] & string lng=arraylng[i]
)、に設定することだけです。infowindow.setContent(*here*);
これどうやってするの?