Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 30.11.2017, 12:30
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,726

Нашел ответ на stackoverflow.
<form action="Controller" method="post">
	<input type="hidden" name="method" value = "callTaxi">
	<input type="hidden" name="position" value="">
	<button type="submit">Заказать такси</button>
</form>
<script>
	function initMap() {
		var centerLatLng = new google.maps.LatLng(53.907761, 27.567160);

		var mapOptions = {
			center: centerLatLng, // Координаты центра мы берем из переменной centerLatLng
			zoom: 12               // Зум по умолчанию. Возможные значения от 0 до 21
		};
		var map = new google.maps.Map(document.getElementById("map"), mapOptions);

		var marker = new google.maps.Marker({
			position: centerLatLng,
			map: map,
			draggable:true,
			title:"Drag me!"
		}),
			dragHandler=function(e){
				document.querySelector('input[name="position"]').value=[e.latLng.lat(),e.latLng.lng()].join(',');
			};
		
		marker.addListener('drag',dragHandler);
		marker.addListener('dragend',dragHandler);
	}
	google.maps.event.addDomListener(window, "load", initMap);
</script>
Ответить с цитированием
  #12 (permalink)  
Старый 30.11.2017, 12:56
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

А не проще value = e.latLng.lat() + "," + e.latLng.lng() ? )
Ответить с цитированием
  #13 (permalink)  
Старый 30.11.2017, 13:45
Новичок на форуме
Отправить личное сообщение для JeeOpp Посмотреть профиль Найти все сообщения от JeeOpp
 
Регистрация: 30.11.2017
Сообщений: 3

Сообщение от Nexus Посмотреть сообщение
Нашел ответ на stackoverflow.
<form action="Controller" method="post">
	<input type="hidden" name="method" value = "callTaxi">
	<input type="hidden" name="position" value="">
	<button type="submit">Заказать такси</button>
</form>
<script>
	function initMap() {
		var centerLatLng = new google.maps.LatLng(53.907761, 27.567160);

		var mapOptions = {
			center: centerLatLng, // Координаты центра мы берем из переменной centerLatLng
			zoom: 12               // Зум по умолчанию. Возможные значения от 0 до 21
		};
		var map = new google.maps.Map(document.getElementById("map"), mapOptions);

		var marker = new google.maps.Marker({
			position: centerLatLng,
			map: map,
			draggable:true,
			title:"Drag me!"
		}),
			dragHandler=function(e){
				document.querySelector('input[name="position"]').value=[e.latLng.lat(),e.latLng.lng()].join(',');
			};
		
		marker.addListener('drag',dragHandler);
		marker.addListener('dragend',dragHandler);
	}
	google.maps.event.addDomListener(window, "load", initMap);
</script>
ага, надо было пояснить что я хотел, однако тут и без меня разобрались

я хотел чтобы когда пользователь открывает страницу с картой, он мог двигать создавшийся там маркер, и при нажатии кнопки
<form action="Controller" method="post">
	<input type="hidden" name="method" value = "callTaxi">
	<input type="hidden" name="position" value="">
	<button type="submit">Заказать такси</button>
</form>

на сервер отправлялся бы запрос с текущими координатами маркера,,

однако в атрибут value нужно как-то всунуть переменную из скрипта
<input type="hidden" name="position" value="">

или же есть возможность как-то в скрипте засунуть переменную в request?
Ответить с цитированием
  #14 (permalink)  
Старый 30.11.2017, 13:51
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,726

JeeOpp, обратите внимание на 23 строку.
Ответить с цитированием
  #15 (permalink)  
Старый 30.11.2017, 14:42
Новичок на форуме
Отправить личное сообщение для JeeOpp Посмотреть профиль Найти все сообщения от JeeOpp
 
Регистрация: 30.11.2017
Сообщений: 3

для потомков
<form action="Controller" method="post">
        <input type="hidden" name="method" value = "callTaxi">
        <input type="hidden" name="position">
        <button type="submit">Заказать такси</button>
</form>

аттрибут value в Position перезаписывал координаты на пробел, я его убрал.

И если маркер не трогать, то передаст на сервер пусто(не null)
Всем спасибо!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Google Maps API, как добавить текст к маркеру? drpozitiff Библиотеки/Тулкиты/Фреймворки 9 05.09.2016 11:35
Как отобразить созданный маршрут в api google maps на Гугл карты Yaros111 Events/DOM/Window 1 20.03.2015 07:42
Расчет стоимости доставки с помощью Google maps API DynkanMaclaud Работа 2 02.02.2015 18:50
проблемы с Google Maps API autocomplite и angularjs Denis94 Angular.js 6 01.12.2014 18:17
API Google Maps vs API Context 2d (элемент canvas) ste4kin Ваши сайты и скрипты 3 24.07.2014 17:06