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

Повторение события внутри другого события
Всем привет. Пишу аякс систему по добавлению комментариев к статьям. Столкнулся с проблемой. При клике на спец ссылке(внешнее событие) появляется формочка добавления комментария. Заполняю - комментарий, жму ок(внутреннее событи), он улетает в базу, все норм. НО! Если не перезагружая страницу добавить еще один комментарий, то он добавится уже дважды. Третий трижды и так далее. ПРи этом вся анимация добавления комментария тоже повторяется. Анимация внешнего события не меняется (Значит оно не повторяется, повторяется только внутреннее). Хотелось бы понять причину такого поведения.
Весь код приводить не буду, чтоб не путать вас, обьясню сам принцип работы скрипта.
$(".add_c a:first").click(function(){   //ПРи нажатии кнопки добавить комментарий
     //...Происходят всякие расчеты положения модального окошка с формочкой, и его плавное появление...
     $(".add").click(function(event){   //Вложенное событие. При нажатии кнопки добавить в форме:
		event.preventDefault();   //Отменяем действие по умолчанию
                //...Далее заносим данные из полей формы в переменные...
			$.post("/index/ajax.php", {action:"positive", page:page, title:title, comment:comment}, function(data){
				$("#m_rez").html(data);     //Вносим ответ от обработчика с специальный див (типа ваш отзыв успешно добавлен)
				$("#ajax_comment").fadeOut(300);   //Прячем форму 
				$("#m_rez").css({"top": top + "px", "left": left + "px"}).fadeIn(500);    //После чего показываем див с результатом
				$("#m_rez, #m_bg").delay(3000).fadeOut(1500); //А через 3 сек и его прячем
			}, "html");
     });
});

Гугл о проблемах вложенных событий ничего мне не рассказал

Последний раз редактировалось OlegDegtev, 14.08.2012 в 14:00.
Ответить с цитированием