Показать сообщение отдельно
  #1 (permalink)  
Старый 06.06.2016, 15:45
Новичок на форуме
Отправить личное сообщение для Сергей Лобанов Посмотреть профиль Найти все сообщения от Сергей Лобанов
 
Регистрация: 06.06.2016
Сообщений: 3

Как преобразовать в массив.
$(document).ajaxStop(function(){   
      var includecoord='';
      $(document).on('click', '.link-map', function(e) {
 	
					$('#add_map').empty();
				
			//	includecoord= JSON.parse($(this).attr("data-coords"));
						
				    alert(includecoord);
					ymaps.ready(init);
					var myMap;
					var mySearchControl;
					function init () {
					    myMap = new ymaps.Map("add_map", {
					        center: [55.57265, 39.530777],
					        controls: ['zoomControl'],
					        zoom: 13
					    }, {
					        balloonMaxWidth: 200
					    });
					
					    // Обработка события, возникающего при щелчке
					    // левой кнопкой мыши в любой точке карты.
					    // При возникновении такого события откроем балун.
					    // Создаем экземпляр класса ymaps.control.SearchControl
					        mySearchControl = new ymaps.control.SearchControl({
					            options: {
					                noPlacemark: true
					            }
					        }),
					   // Результаты поиска будем помещать в коллекцию.
					        mySearchResults = new ymaps.GeoObjectCollection(null, {
					            hintContentLayout: ymaps.templateLayoutFactory.createClass('$[properties.name]')
					        });
					    myMap.controls.add(mySearchControl);
					    myMap.geoObjects.add(mySearchResults);
					    // При клике по найденному объекту метка становится красной.
					    mySearchResults.events.add('click', function (e) {
					        e.get('target').options.set('preset', 'islands#redIcon');
					    });
					    // Выбранный результат помещаем в коллекцию.
					    mySearchControl.events.add('resultselect', function (e) {
					        var index = e.get('index');
					        mySearchControl.getResult(index).then(function (res) {
					           mySearchResults.add(res);
					        });
					    }).add('submit', function () {
					            mySearchResults.removeAll();
					        })   
					    
					   ymaps.route([{ type: 'viaPoint',point: Люберцы, проспект Ильича, 40 },{ type: 'viaPoint',point: Люберцы, проспект Ильича, 60 }, 'Москва']).then(
					    function (route) {
					        myMap.geoObjects.add(route);
					    },
					    function (error) {
					        alert('Возникла ошибка: ' + error.message);
					    }
					);
					}
					
				});	
      
     });


Как мне это значение [{ type: 'viaPoint',point: Люберцы, проспект Ильича, 40 },{ type: 'viaPoint',point: Люберцы, проспект Ильича, 60 }, 'Москва'] из строки преобразовать в массив, чтоб скрипт его правильно воспринял, а то при обычной подстановке строки из атрибута, типа
$(this).attr("data-coords")
выскакивает ошибка что не найден маршрут. Т.е. мне нужно получать значение при нажатии на ссылку, оттуда оно берется из data-coords , потом как-то все надо преобразовать в массив. Например, будет выглядеть так:
ymaps.route(myarr).then(
...
Не пойму как это сделать. Кто подскажет? Заранее спасибо.

Последний раз редактировалось Сергей Лобанов, 06.06.2016 в 15:47.
Ответить с цитированием