Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.59/29: Рейтинг темы: голосов - 29, средняя оценка - 4.59
0 / 0 / 0
Регистрация: 27.11.2012
Сообщений: 217
1

Получение переменной из другой функции

20.10.2015, 14:41. Показов 5875. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
$('.test').on('click', function() {
var imageSrc = $(this).attr('src'); // путь до нажатой картинки
var idData = $(this).attr('data');
$('#myModal img').attr('src', imageSrc+"?id="+idData);
$.get('test2.php', {print_size:idData}, function(data)    {
   $('#myModal').modal('show');
   var test = data;
   console.log(test);
   var elem = document.getElementById('test');
   elem.innerHTML = test;
   position = JSON.parse(document.getElementById('position').textContent);
   console.log(position);
});
});
var x1, y1, x2, y2, crop = 'test/';
var jcrop_api;
jQuery(function($){         
    $('#target').Jcrop({        
        onChange:   showCoords,
        onSelect:   showCoords,
        setSelect: [ position.x1, position.y1, position.x2, position.y2], 
    },function(){       
        jcrop_api = this;       
    });
});
Никак не могу догадаться, как получить переменную position в другой функции. Как можно попробовать?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.10.2015, 14:41
Ответы с готовыми решениями:

Получение значения локальной переменной функции вне этой функции
Возможно ли переменную объявленную в функции использовать за ее пределами? Функции вызывается...

И снова глобальная переменная в js. Как изменить значение глобальной переменной в одной функции и увидеть это значение в другой функции?
Это учебное задание. Помогите, пожалуйста, разобраться почему func1 видит какую-то новую переменную...

Можно ли сделать так, чтобы названием переменной стало значение другой переменной?
По аналогии с phpшным $$var; Если можно, то как?

Имя переменной составить из значения другой переменной?
друзья, у меня такая задача: надо имя переменной составить из значения другой переменной. ...

6
81 / 81 / 50
Регистрация: 26.11.2012
Сообщений: 303
20.10.2015, 15:03 2
обьявите переменную вне функций

Javascript
1
2
3
4
5
6
7
8
9
10
11
var position;
 
function some1(){
    position = value;
    //.....
}
 
function some2(){
    //.....
    var data = position;
}
0
0 / 0 / 0
Регистрация: 27.11.2012
Сообщений: 217
20.10.2015, 15:15  [ТС] 3
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// x1, y1, x2, y2 - Координаты для обрезки изображения
// crop - Папка для обрезанных изображений
var position;
$('.test').on('click', function() {
var imageSrc = $(this).attr('src'); // путь до нажатой картинки
var idData = $(this).attr('data');
$('#myModal img').attr('src', imageSrc+"?id="+idData);
$.get('test2.php', {print_size:idData}, function(data)    {
   $('#myModal').modal('show');
   var test = data;
   console.log(test);
   var elem = document.getElementById('test');
   elem.innerHTML = test;
   position = JSON.parse(document.getElementById('position').textContent);
});
});
var x1, y1, x2, y2, crop = 'test/';
var jcrop_api;
jQuery(function($){
    var test=position;
    console.log(test);
    $('#target').Jcrop({        
        onChange:   showCoords,
        onSelect:   showCoords,
        setSelect: [ position.x1, position.y1, position.x2, position.y2], 
    },function(){       
        jcrop_api = this;       
    });
вот сделал, test выводит все равно underfined
0
81 / 81 / 50
Регистрация: 26.11.2012
Сообщений: 303
20.10.2015, 16:22 4
ах, конечно, у вас же аякс функция, только увидел.
ваш вопрос был задан не верно)
Вам внутри тела колбека надо передать эту переменную.
По цепочке, иначе никак)

после
Javascript
1
position = JSON.parse(document.getElementById('position').textContent);
вам надо вызвать функцию приемщик.

в вашем случае

Javascript
1
2
3
4
5
6
7
8
9
10
jQuery(function($){
    var test=position;
    console.log(test);
    $('#target').Jcrop({        
        onChange:   showCoords,
        onSelect:   showCoords,
        setSelect: [ position.x1, position.y1, position.x2, position.y2], 
    },function(){       
        jcrop_api = this;       
    });
немного переделаем и получим

Javascript
1
2
3
4
5
6
7
8
9
10
function function_name(position){
    var test=position;
    console.log(test);
    $('#target').Jcrop({        
        onChange:   showCoords,
        onSelect:   showCoords,
        setSelect: [ position.x1, position.y1, position.x2, position.y2], 
    },function(){       
        jcrop_api = this;       
    };
Добавляем вызов

Javascript
1
2
position = JSON.parse(document.getElementById('position').textContent);
function_name(position);
Добавлено через 16 секунд
Переменные выносить не надо
0
0 / 0 / 0
Регистрация: 27.11.2012
Сообщений: 217
20.10.2015, 18:26  [ТС] 5
Тогда я получаю переменную, но у меня вылазит такая ошибка
Uncaught TypeError: $(...).Jcrop is not a function

Добавлено через 39 секунд
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
var position;
$('.test').on('click', function() {
var imageSrc = $(this).attr('src'); // путь до нажатой картинки
var idData = $(this).attr('data');
$('#myModal img').attr('src', imageSrc+"?id="+idData);
$.get('test2.php', {print_size:idData}, function(data)    {
   $('#myModal').modal('show');
   var test = data;
   console.log(test);
   var elem = document.getElementById('test');
   elem.innerHTML = test;
   position = JSON.parse(document.getElementById('position').textContent);
   function_name(position);
});
});
var x1, y1, x2, y2, crop = 'test/';
var jcrop_api;
function function_name(position){
    var test=position;
    console.log(test)
    $('#target').Jcrop({        
        onChange:   showCoords,
        onSelect:   showCoords,
        setSelect: [ position.x1, position.y1, position.x2, position.y2], 
    },function(){       
        jcrop_api = this;       
    });
};
Добавлено через 21 секунду
пробовал оставить и jQuery(function($), все равно
0
81 / 81 / 50
Регистрация: 26.11.2012
Сообщений: 303
20.10.2015, 21:02 6
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
var x1, y1, x2, y2, crop = 'test/';
var jcrop_api;
$('.test').on('click', function() {
var imageSrc = $(this).attr('src'); // путь до нажатой картинки
var idData = $(this).attr('data');
$('#myModal img').attr('src', imageSrc+"?id="+idData);
$.get('test2.php', {print_size:idData}, function(data)    {
   $('#myModal').modal('show');
   var test = data;
   console.log(test);
   var elem = document.getElementById('test');
   elem.innerHTML = test;
   position = JSON.parse(document.getElementById('position').textContent);
   console.log(position);
//
   jQuery(function($){         
    $('#target').Jcrop({        
        onChange:   showCoords,
        onSelect:   showCoords,
        setSelect: [ position.x1, position.y1, position.x2, position.y2], 
    },function(){       
        jcrop_api = this;       
    });
});
});
});
Добавлено через 1 минуту
Хотя странно, должно и так как в предыдущем примере работать нормально
0
0 / 0 / 0
Регистрация: 27.11.2012
Сообщений: 217
21.10.2015, 15:25  [ТС] 7
Все равно ту же ошибку пишет
0
21.10.2015, 15:25
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.10.2015, 15:25
Помогаю со студенческими работами здесь

Сделать кнопку активной; достать значение переменной из другой функции
Суть в том, что есть поле в котором введено значение = 1, есть две кнопки: кнопка1 прибавляет 1,...

Как значение переменной передать другой переменной?
Добрый день! подскажите мне с ява-кодом, код моего ява скрипта на жейкверти //отображает...

Включение в имя переменной значение другой переменной
Не злого времени суток всем кто может помочь с моей мааленькой проблемкой? var nc =...

Получение таблицы значений функции из другой функции
Нужно получить функцию t(n) в маткаде, значения которой равно сумме значений функции T(n)....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru