Клуб API Карт

Geocoder и Balloon

Пост в архиве.

Здравствуйте, на сайте вывожу местоположение организаций таким способом
%Adres_value% %Rajon_value% -- адрес организации,

<!-- Здесь отображается местоположение организации без метки с адресом, я хочу еще выводить в метке адрес, как? -->

   <script type="text/javascript">
        // Создание обработчика для события window.onLoad
        YMaps.jQuery(function () {
            // Создание экземпляра карты и его привязка к созданному контейнеру
            var map = new YMaps.Map(YMaps.jQuery("#YMapsID")[0]
            // Создание объекта геокодера
            var geocoder = new YMaps.Geocoder("%Adres_value% %Rajon_value%");
           // По завершению геокодирования инициализируем карту первым результатом
            YMaps.Events.observe(geocoder, geocoder.Events.Load, function (geocoder) {
                if (geocoder.length()) {
                    map.setBounds(geocoder.get(0).getBounds()
                }
            }
        }
    </script>
<div id="YMapsID" style="display: none; height:400px; width:100%;"></div>

но я хочу что бы на карте всплывала метка с адресом организации, то есть нужно использовать
типа var placemark = new YMaps.Placemark(new YMaps.GeoPoint(37, 55)

но у меня есть только адрес (пример: Псков, ул. Первомайская 12), долготы/широты нет,

как в таком случае отображать метки с названием организаций?
имея только адрес (пример: Псков, ул. Первомайская 12)

   


   

4 комментария

Лучше всего прогеокодировать все адреса один раз и сложить в базу координаты.

Если всё же зачем-то необходимо каждый раз нагружать пользователя лишним http-запросом - 

из ответа геокодера можно брать только координату и создавать свою метку

Лучше всего прогеокодировать все адреса один раз и сложить в базу координаты.

в моем случае необходимо загружать

а как же моем случае сделать выше описанное?

Владимир Болотовский
28 января 2016, 05:44

У меня похожая проблема, но получается как раз ваш случай. Мне надо в метке вывести название организаций, а не адрес, но выводится адрес ;-(.

Для этого надо не ..."

 

// По завершению геокодирования инициализируем карту первым результатом
            YMaps.Events.observe(geocoder, geocoder.Events.Load, function (geocoder) {
                if (geocoder.length()) {
                    map.setBounds(geocoder.get(0).getBounds()"

 

а

var geocoder = new YMaps.Geocoder("тут адрес'",{results: 1, boundedBy: spbmap.getBounds()}); 

map.addOverlay(geocoder);

тогда балун выведет адрес (и его никак не заменить) :-(

Владимир Болотовский
28 января 2016, 05:44

виноват: "spbmap" читать как "map"