Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.02.2015, 15:26
Новичок на форуме
Отправить личное сообщение для Enterely Посмотреть профиль Найти все сообщения от Enterely
 
Регистрация: 11.02.2015
Сообщений: 6

Как вытащить из Return в переменную для передачи в форму?
У меня такая проблема. Мне нужно вытащить именно те данные, которые выводит return.
Пробовал вместо return записать в переменную, а потом отправить в форму, но он выводит "true", вместо тех данных, которые выводит return. Помогите, как записать эти данные в переменную для нормального вывода в форму через:
document.getElementById('latlongmet').value = 'Здесь должна быть та самая переменная';

Сам код карты, Return указан в конце кода:
jQuery(function () {
    ymaps.ready(init);
});
 
function init () {
    var map = new ymaps.Map(
            'map', {
                center: [55.819543, 37.611619],
                zoom: 10
            }
        ),
        markerElement = jQuery('#marker'),
        dragger = new ymaps.util.Dragger({
            // Драггер будет автоматически запускаться при нажатии на элемент 'marker'.
            autoStartElement: markerElement[0]
        }),
        // Смещение маркера относительно курсора.
        markerOffset,
        markerPosition;
 
    dragger.events
        .add('start', onDraggerStart)
        .add('move', onDraggerMove)
        .add('stop', onDraggerEnd);
 
    function onDraggerStart(event) {   
        var offset = markerElement.offset(),
            position = event.get('position');
        // Сохраняем смещение маркера относительно точки начала драга.  
        markerOffset = [
            position[0] - offset.left,
            position[1] - offset.top
        ];
        markerPosition = [
            position[0] - markerOffset[0],
            position[1] - markerOffset[1]
        ];
 
        applyMarkerPosition();
    }
 
    function onDraggerMove(event) {
        applyDelta(event);
    }
 
    function onDraggerEnd(event) {
        applyDelta(event);
        markerPosition[0] += markerOffset[0];
        markerPosition[1] += markerOffset[1];
        // Переводим координаты страницы в глобальные пиксельные координаты.
        var markerGlobalPosition = map.converter.pageToGlobal(markerPosition),
            // Получаем центр карты в глобальных пиксельных координатах.
            mapGlobalPixelCenter = map.getGlobalPixelCenter(),
            // Получением размер контейнера карты на странице.
            mapContainerSize = map.container.getSize(),
            mapContainerHalfSize = [mapContainerSize[0] / 2, mapContainerSize[1] / 2],
            // Вычисляем границы карты в глобальных пиксельных координатах.
            mapGlobalPixelBounds = [
                [mapGlobalPixelCenter[0] - mapContainerHalfSize[0], mapGlobalPixelCenter[1] - mapContainerHalfSize[1]],
                [mapGlobalPixelCenter[0] + mapContainerHalfSize[0], mapGlobalPixelCenter[1] + mapContainerHalfSize[1]]
            ];
        // Проверяем, что завершение работы драггера произошло в видимой области карты.
        if (containsPoint(mapGlobalPixelBounds, markerGlobalPosition)) {
            // Теперь переводим глобальные пиксельные координаты в геокоординаты с учетом текущего уровня масштабирования карты.
            var geoPosition = map.options.get('projection').fromGlobalPixels(markerGlobalPosition, map.getZoom());
            alert(geoPosition.join(' '));
        }
    }
 
    function applyDelta (event) {
        // Поле 'delta' содержит разницу между положениями текущего и предыдущего события драггера.
        var delta = event.get('delta');
        markerPosition[0] += delta[0];
        markerPosition[1] += delta[1];
        applyMarkerPosition();
    }
 
    function applyMarkerPosition () {
        markerElement.css({
            left: markerPosition[0],
            top: markerPosition[1]
        });
    }
 
    function containsPoint (bounds, point) {
        return point[0] >= bounds[0][0] && point[0] <= bounds[1][0] &&
               point[1] >= bounds[0][1] && point[1] <= bounds[1][1];
    }
}
Ответить с цитированием
  #2 (permalink)  
Старый 11.02.2015, 15:32
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 12,296

Сообщение от Enterely
Return указан в конце кода
Этот?
Сообщение от Enterely
return point[0] >= bounds[0][0] && point[0] <= bounds[1][0] &&point[1] >= bounds[0][1] && point[1] <= bounds[1][1];
Так он и равен либо true, либо false...
Ответить с цитированием
  #3 (permalink)  
Старый 11.02.2015, 15:40
Новичок на форуме
Отправить личное сообщение для Enterely Посмотреть профиль Найти все сообщения от Enterely
 
Регистрация: 11.02.2015
Сообщений: 6

Сообщение от ksa Посмотреть сообщение
Этот?
Так он и равен либо true, либо false...
Ну при выводе в форму HTML да, а вот при return он выводит окно (как и в случае с alert), но в этом окне отображаются координаты, которые мне и нужно вытащить оттуда...
Ответить с цитированием
  #4 (permalink)  
Старый 11.02.2015, 15:47
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 12,296

Enterely, начнем с того, что тот ретурн вовсе ни при делах... Он может возвращать некие значения и не более того...

Сообщение от Enterely
в этом окне отображаются координаты, которые мне и нужно вытащить оттуда
Вот их-то и бери. Оставь ретурн впокое.
Ответить с цитированием
  #5 (permalink)  
Старый 11.02.2015, 15:49
Новичок на форуме
Отправить личное сообщение для Enterely Посмотреть профиль Найти все сообщения от Enterely
 
Регистрация: 11.02.2015
Сообщений: 6

Сообщение от ksa Посмотреть сообщение
Этот?

Так он и равен либо true, либо false...
Сообщение от ksa Посмотреть сообщение
Enterely, начнем с того, что тот ретурн вовсе ни при делах... Он может возвращать некие значения и не более того...
Вот их-то и бери. Оставь ретурн впокое.
Так вот я и не могу/не знаю как мне их вытащить, они в ретурн выводятся а как записать их в переменную я не знаю
Ответить с цитированием
  #6 (permalink)  
Старый 11.02.2015, 15:50
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 12,296

Сообщение от Enterely
они в ретурн выводятся
Нет.
Ищи в скрипте нужные переменные, потом с ними работай.
Ответить с цитированием
  #7 (permalink)  
Старый 11.02.2015, 15:53
Новичок на форуме
Отправить личное сообщение для Enterely Посмотреть профиль Найти все сообщения от Enterely
 
Регистрация: 11.02.2015
Сообщений: 6

Сообщение от ksa Посмотреть сообщение
Нет.
Ищи в скрипте нужные переменные, потом с ними работай.
Искал, не нашёл. Поэтому сюда и обратился за помощью
Ответить с цитированием
  #8 (permalink)  
Старый 11.02.2015, 15:54
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 12,296

Сообщение от Enterely
Искал, не нашёл.


Они?

if (containsPoint(mapGlobalPixelBounds, markerGlobalPosition)) {
	// Теперь переводим глобальные пиксельные координаты в геокоординаты с учетом текущего уровня масштабирования карты.
	var geoPosition = map.options.get('projection').fromGlobalPixels(markerGlobalPosition, map.getZoom());
	alert(geoPosition.join(' '));
	document.getElementById('latlongmet').value = geoPosition.join(' ');
}
Ответить с цитированием
  #9 (permalink)  
Старый 11.02.2015, 16:09
Новичок на форуме
Отправить личное сообщение для Enterely Посмотреть профиль Найти все сообщения от Enterely
 
Регистрация: 11.02.2015
Сообщений: 6

Сообщение от ksa Посмотреть сообщение
Нет.
Ищи в скрипте нужные переменные, потом с ними работай.
Сообщение от ksa Посмотреть сообщение


Они?

if (containsPoint(mapGlobalPixelBounds, markerGlobalPosition)) {
	// Теперь переводим глобальные пиксельные координаты в геокоординаты с учетом текущего уровня масштабирования карты.
	var geoPosition = map.options.get('projection').fromGlobalPixels(markerGlobalPosition, map.getZoom());
	alert(geoPosition.join(' '));
	document.getElementById('latlongmet').value = geoPosition.join(' ');
}
Я совсем дуб в JS, поэтому не знаю как и где вытащить. Помогите, если можете? Вот что у меня в редакторе, но при этом он ничего не выводит вообще
Изображения:
Тип файла: jpg Снимок экрана (73).jpg (11.8 Кб, 3 просмотров)
Ответить с цитированием
  #10 (permalink)  
Старый 11.02.2015, 16:10
Новичок на форуме
Отправить личное сообщение для Enterely Посмотреть профиль Найти все сообщения от Enterely
 
Регистрация: 11.02.2015
Сообщений: 6


Плохо видно, вот тут норм будет :
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как в фильтр выборки по атрибуту занести переменную? tanto39 jQuery 9 29.06.2014 00:53
как вытащить переменную из следующего скрипта k0rshun Общие вопросы Javascript 15 24.04.2014 10:17
регулярки: замена ссылки на ютуб Hekumok Общие вопросы Javascript 105 01.08.2012 09:48
Как изменить скрипт, что бы им его можно было использовать для нужной страницы Nick50_70 Общие вопросы Javascript 0 28.04.2009 22:30
вызов метода return для функции-родителя evgen28 Общие вопросы Javascript 17 22.01.2009 14:46