Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   как передать измененные параметры AJAX в другую функцию? (https://javascript.ru/forum/dom-window/42258-kak-peredat-izmenennye-parametry-ajax-v-druguyu-funkciyu.html)

akselei 19.10.2013 02:51

как передать измененные параметры AJAX в другую функцию?
 
Вопрос состоит в чем, мне нужно получать данные с определенного блока
<div class="elemValues">
<div class="a">1</div>
<div class="b">2</div>
<div class="c">3</div>
</div>

Этот блок динамически меняется в зависимости от полученных данных через AJAX
То есть есть фукнция
block.on('click','.link', function(){
		jQuery.ajax({
			url: link,
			dataType: 'json',
			type: 'post',
			data: linkJSON,
			success: function(data){
/* при success мы получаем новые данные data
    например 
<div class="elemValues">
<div class="a">10</div>
<div class="b">20</div>
<div class="c">30</div>
</div>
сооветствено Они меняются в DOM-е
 */

function2();
			}
		});
		return false;
	});
};

А есть другая функция которая должна реагировать на эти изменения и подтягивать новые данные.
пробовал через
$.each
. немного не то. Приходится объявлять функцию в
success : function2();

И при вызове
function2();
происходит двойной вызов например JSON потому что она объявляется и в
document.ready
и в
success
, если что-то не понятно пожалуйста задавайте вопросы. пол дня вожусь уже. У меня были мысли по поводу передачи callback но я не могу понять как.

И собственно вопрос как мне передать измененные параметры AJAX в другую функцию?

danik.js 19.10.2013 06:36

Цитата:

Сообщение от akselei
происходит двойной вызов например JSON потому что она объявляется

Объявление функции не влечет за собой ее выполнение. И одна функция не может быть объявлена дважды. Это тогда получается две функции. Выражайся яснее - нифига не понятно.

Arramis 19.10.2013 12:46

Цитата:

Сообщение от danik.js (Сообщение 277170)
одна функция не может быть объявлена дважды. Это тогда получается две функции.

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


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