Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   вернуть значения анонимной функции (https://javascript.ru/forum/events/62569-vernut-znacheniya-anonimnojj-funkcii.html)

Gowa 17.04.2016 00:24

вернуть значения анонимной функции
 
Всем доброго времени суток. Подскажите, пожалуйста, как решить следующую задачу.
Есть некоторое количество дивов
<div class="place" data-place='<?=$placeNum?>' data-row='<?=$placeRow?>'></div>

и скрипт, который вызывается при каждом нажатии на любой из этих дивов, тем самым записывая значения нажатого див в переменные places и rows соответственно.
$( ".place" ).click(function(){
	var places = new Array;
	var rows = new Array;
	$( this ).toggleClass('selected');
	$( '.selected' ).each(function(){
		var place = $(this).attr('data-place');
		var row = $(this).attr('data-row');
		places.push(place);
		rows.push(row);
	});
	console.log(places);
	console.log(rows);
});

Но проблема в том, что значения остаются в области видимости этой анонимной функции. А задумка такая, что затем полученные значения нужно отправить на серверный скрипт. Вот я и не могу сообразить, как зти локальные переменные передать в другую функцию, которая отправляет форму...
Вынести эти переменные за пределы функции - не выход, т.к. при повторном нажатии на один и тот же элемент, ожидается удаление его значения из массива. За пределами же функции его значение записывается в конец массива при каждом нажатии.

Vlasenko Fedor 17.04.2016 01:10

window.places = places;

далее будет глобально доступно
alert(places);

Gowa 17.04.2016 01:19

Цитата:

Сообщение от Poznakomlus
window.places = places;

далее будет глобально доступно

ОГРОМНОЕ спасибо! :)


Часовой пояс GMT +3, время: 07:50.