Я использую API Google Maps для отображения маркеров на карте.
Каждый маркер указывает на магазин на карте.
Моя проблема заключается в создании обработчика событий для каждой марки, которыйбудет отображаться всплывающая подсказка с информацией о магазине, когда будет нажата данная отметка.
Я использую текстовый ввод, чтобы позволить пользователю ввести город, а с помощью jquery я обрабатываю событие click на соседней кнопке отправки.Затем я отправляю запрос на сайт php, возвращаю следующий объект:
d: Object
error: false
lat: "52.3744440000"
lng: "9.7386110000"
shop: Array[2]
0: Object
address: "Addressstreet 12"
lat: "52.3761209000"
lng: "9.7387242000"
name: "Shop 1"
tel: "1234"
__proto__: Object
1: Object
length: 2
etc.
Теперь я использую значения lat и lng, которые являются координатами города, чтобы центрировать карту.Затем я отправляю массив shop в метод paintShops (shops):
function paintShops(shops){
for (var i = 0; i < shops.length; i++){
kl = shops[i];
var ka = parseFloat(kl.lat);
var kb = parseFloat(kl.lng);
tel = kl.tel;
address = kl.address;
var son = new google.maps.Marker({
position: new google.maps.LatLng(ka, kb),
map: map,
title: kl.name,
clickable: true
});
google.maps.event.addListener(son, 'click', function(son, tel, address) {
displayShopTooltip(son, tel, address);
}
Моя проблема в последней строке приведенного выше фрагмента: когда я нажимаю на метку, параметры тел и адрес displayShopTooltipне определены.Я хотел бы знать, что нужно сделать, чтобы не иметь этой проблемы, или альтернативно другой подход.Заранее спасибо.