Проблема с ID точки (метки) СДЭК на яндекс-картах

1. fixin 4181 06.06.22 14:49 Сейчас в теме
Вот код yandex-меток:
ymaps.ready(init);

function init () {
    var myMap = new ymaps.Map("map", {
            center: [56.735323, 37.1556315],
            zoom: 10
        }, {
            searchControlProvider: 'yandex#search'
        })
        ,
        myPlacemark1 = new ymaps.Placemark([56.74146, 37.170678], {
            balloonContentHeader: "СДЭК",
            balloonContentBody: "На Понтекорво",
            balloonContentFooter: "",
            hintContent: "На Понтекорво",
            iden:"DBN4"
        })      
               ,
        myPlacemark2 = new ymaps.Placemark([56.729186, 37.140585], {
            balloonContentHeader: "СДЭК",
            balloonContentBody: "На Боголюбова 44",
            balloonContentFooter: "",
            hintContent: "На Боголюбова 44",
            iden:"DBN5"
        })      
               ;

    
    myMap.geoObjects.add(myPlacemark1),myMap.geoObjects.add(myPlacemark2);
    
    
}

В поле HTML-документа в 1С ловлю событие ПриНажатии, но ДанныеСобытия.Button.ID - пустое.

Как пролечить?
Показать


Мне советуют: Добавить добавить обработчик, который будет вызывать клик с необходимыми тебе данными , как сделано тут: https://yandex.ru/dev/maps/jsbox/2.1/geoobject_events

Но я не знаю, как это сделать. Подскажите, как получить ID яндекс-метки.

Я могу добавить вот такое событие, alert выскакивает, но как добавить событие виртуального клика, не знаю:

myPlacemark1.events.add('click' , function(e){

            alert(myPlacemark1.properties.get('iden'));
Вознаграждение за ответ
Показать полностью
Найденные решения
2. fixin 4181 06.06.22 20:55 Сейчас в теме +3 $m
Пришлось разбиратсья самому.

Вот код в JS. Добавил событие.

ymaps.ready(init);

function init () {
    var myMap = new ymaps.Map("map", {
            center: [56.735323, 37.1556315],
            zoom: 10
        }, {
            searchControlProvider: 'yandex#search'
        })
        ,
        myPlacemark1 = new ymaps.Placemark([56.74146, 37.170678], {
            balloonContentHeader: "СДЭК",
            balloonContentBody: "На Понтекорво",
            balloonContentFooter: "",
            hintContent: "На Понтекорво",
            iden:"DBN4"
        })       
               ,
        myPlacemark2 = new ymaps.Placemark([56.729186, 37.140585], {
            balloonContentHeader: "СДЭК",
            balloonContentBody: "На Боголюбова 44",
            balloonContentFooter: "",
            hintContent: "На Боголюбова 44",
            iden:"DBN5"
        })       
               ;

    
    myMap.geoObjects.add(myPlacemark1),myMap.geoObjects.add(myPlacemark2);
         
                        
           myPlacemark1.events.add('click' , function(e){
        var evt = document.createEvent('MouseEvents');
        evt.initEvent('click', true, false );
        evt.data = myPlacemark1.properties.get('iden');
        document.dispatchEvent(evt);
   });
     myPlacemark2.events.add('click' , function(e){
        var evt = document.createEvent('MouseEvents');
        evt.initEvent('click', true, false );
        evt.data = myPlacemark2.properties.get('iden');
        document.dispatchEvent(evt);
   });
}
Показать


Ну и в 1С отлавливаю это событие:

&НаКлиенте
Процедура дор_ЯндексКартаПриНажатииПосле(Элемент, ДанныеСобытия, СтандартнаяОбработка)
	
	Если ЗначениеЗаполнено(ДанныеСобытия.Event.data) Тогда	
		
		//Осипов Яндекс-карты  2022-06-05
		КодПункта = ДанныеСобытия.Event.data; //Пример: "DBN5" 
		
	КонецЕсли;
	
КонецПроцедуры

Показать
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. fixin 4181 06.06.22 20:55 Сейчас в теме +3 $m
Пришлось разбиратсья самому.

Вот код в JS. Добавил событие.

ymaps.ready(init);

function init () {
    var myMap = new ymaps.Map("map", {
            center: [56.735323, 37.1556315],
            zoom: 10
        }, {
            searchControlProvider: 'yandex#search'
        })
        ,
        myPlacemark1 = new ymaps.Placemark([56.74146, 37.170678], {
            balloonContentHeader: "СДЭК",
            balloonContentBody: "На Понтекорво",
            balloonContentFooter: "",
            hintContent: "На Понтекорво",
            iden:"DBN4"
        })       
               ,
        myPlacemark2 = new ymaps.Placemark([56.729186, 37.140585], {
            balloonContentHeader: "СДЭК",
            balloonContentBody: "На Боголюбова 44",
            balloonContentFooter: "",
            hintContent: "На Боголюбова 44",
            iden:"DBN5"
        })       
               ;

    
    myMap.geoObjects.add(myPlacemark1),myMap.geoObjects.add(myPlacemark2);
         
                        
           myPlacemark1.events.add('click' , function(e){
        var evt = document.createEvent('MouseEvents');
        evt.initEvent('click', true, false );
        evt.data = myPlacemark1.properties.get('iden');
        document.dispatchEvent(evt);
   });
     myPlacemark2.events.add('click' , function(e){
        var evt = document.createEvent('MouseEvents');
        evt.initEvent('click', true, false );
        evt.data = myPlacemark2.properties.get('iden');
        document.dispatchEvent(evt);
   });
}
Показать


Ну и в 1С отлавливаю это событие:

&НаКлиенте
Процедура дор_ЯндексКартаПриНажатииПосле(Элемент, ДанныеСобытия, СтандартнаяОбработка)
	
	Если ЗначениеЗаполнено(ДанныеСобытия.Event.data) Тогда	
		
		//Осипов Яндекс-карты  2022-06-05
		КодПункта = ДанныеСобытия.Event.data; //Пример: "DBN5" 
		
	КонецЕсли;
	
КонецПроцедуры

Показать
Оставьте свое сообщение
Вакансии
Ведущий Инженер - программист 1С
Новокузнецк
зарплата от 100 000 руб.
Полный день

Программист 1C
Москва
Полный день

Главный специалист (Программист 1с)
Подольск
зарплата от 100 000 руб. до 110 000 руб.
Полный день

Программист
Москва
зарплата от 200 000 руб. до 230 000 руб.
Полный день

Программист 1С
Ростов-на-Дону
зарплата от 140 000 руб. до 180 000 руб.
Полный день