Всем доброго времени суток. Подскажите, пожалуйста, как решить следующую задачу.
Есть некоторое количество дивов
<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);
});
Но проблема в том, что значения остаются в области видимости этой анонимной функции. А задумка такая, что затем полученные значения нужно отправить на серверный скрипт. Вот я и не могу сообразить, как зти локальные переменные передать в другую функцию, которая отправляет форму...
Вынести эти переменные за пределы функции - не выход, т.к. при повторном нажатии на один и тот же элемент, ожидается удаление его значения из массива. За пределами же функции его значение записывается в конец массива при каждом нажатии.