Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 29.01.2015, 21:44
Аспирант
Отправить личное сообщение для Officeoff.ru Посмотреть профиль Найти все сообщения от Officeoff.ru
 
Регистрация: 14.03.2014
Сообщений: 64

Дублирование post jquery
Всем доброго времени суток. Уже поднимал похожую тему и тогда казалось, что решение найдено...
В общем столкнулся с проблемой. jquery дублирует отправку post.
$(".check").click(function(e){
		var action = "check";
		var page = "crm";
		var id = $(this).siblings("input[name='ider']").attr("value");
		var res = $(this).parents(".big_crm");
		$.post("/modules/action.php", {action:action, page:page, id:id}, function(data){
			if (data.length>0) {
				res.html(data);
			}
		});
		console.log('test');
	});


В action.php так же подключен этот скрипт. В дебагере показывает 2,3,8,14,21,29 кликов ну и т.д. То есть количество кликов растет в геометрической прогрессии. Что делать????
Ответить с цитированием
  #2 (permalink)  
Старый 30.01.2015, 13:22
Аспирант
Отправить личное сообщение для Officeoff.ru Посмотреть профиль Найти все сообщения от Officeoff.ru
 
Регистрация: 14.03.2014
Сообщений: 64

Неужели никаких вариантов нет?!
Ответить с цитированием
  #3 (permalink)  
Старый 30.01.2015, 14:07
Профессор
Отправить личное сообщение для krasovsky Посмотреть профиль Найти все сообщения от krasovsky
 
Регистрация: 21.12.2012
Сообщений: 869

Ты этим сриптом загружаешь через ajax этот же скрипт, логично же да? И каждый раз навешиваешь обрабочик $(".check").click(function(e){
снова и снова, снова и снова, снова и снова, снова и снова,снова и снова, при этом каждый раз удваиваясь.

Последний раз редактировалось krasovsky, 30.01.2015 в 14:09.
Ответить с цитированием
  #4 (permalink)  
Старый 30.01.2015, 22:24
Аспирант
Отправить личное сообщение для Officeoff.ru Посмотреть профиль Найти все сообщения от Officeoff.ru
 
Регистрация: 14.03.2014
Сообщений: 64

Блин, я понимаю, что пишу тупость. Но мне нужно, чтобы этот код был в action.php, точнее он работал из этого файла. Что делать то?
Ответить с цитированием
  #5 (permalink)  
Старый 02.02.2015, 08:09
Профессор
Отправить личное сообщение для krasovsky Посмотреть профиль Найти все сообщения от krasovsky
 
Регистрация: 21.12.2012
Сообщений: 869

Сообщение от Officeoff.ru
Что делать то?
Пересмотреть архитектуру.
Использовать делегирование, объявить в одном месте где нибудь и не нужно 50 раз навешивать обработчик снова
$(document).on('click',".check",function(){....})
Ответить с цитированием
  #6 (permalink)  
Старый 03.02.2015, 17:09
Аспирант
Отправить личное сообщение для Officeoff.ru Посмотреть профиль Найти все сообщения от Officeoff.ru
 
Регистрация: 14.03.2014
Сообщений: 64

Сообщение от krasovsky Посмотреть сообщение
Пересмотреть архитектуру.
Использовать делегирование, объявить в одном месте где нибудь и не нужно 50 раз навешивать обработчик снова
$(document).on('click',".check",function(){....})
Огромное спасибо. Сначала была такая идея... Но видимо не хватает знаний в этой области.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Jquery post. объекты и методы-обработчики ArtJS AJAX и COMET 2 29.12.2013 22:06
Какая разница между post запросами jquery и ajax? Rooner jQuery 2 18.06.2012 14:29
Jquery ajax в Operа к ASP.NET скрипту по таймеру, IIS выдает 403.9 Zhirinovsky AJAX и COMET 0 23.02.2012 12:56
jquery и POST korner jQuery 6 27.06.2010 03:52
jQuery Ajax Rater Plugin и массив POST - Нужна помощь TROODON jQuery 12 30.12.2009 22:44