|
|
|
(JS) JQuery непонятное поведение обработчика на асинхронных данных
|
|||
|---|---|---|---|
|
#18+
Доброй ночи Вновь столкнулся с такой проблемой. Код ниже, для краткости основные части кода заменил алертами. Код: plaintext 1. 2. 3. 4. 5. 6. 7. Там где стоит 2 алерт у меня в коде прописан $.ajax в результате выполнения обработчика - он при одном проходе по коду отправляет (сколько я насчитал) 2, 4 10 запросов к бд. (тестировал на инсертах.) Как можно этот произвол прекратить? Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2009, 00:40 |
|
||
|
(JS) JQuery непонятное поведение обработчика на асинхронных данных
|
|||
|---|---|---|---|
|
#18+
а) имхо неправильно проверять наличие чилда - надо делать универсально; б) непонятна таблица, "которая подгружается асинхронно" - надо видеть как; в) когда ты ловишь "проходы" и что это такое вобще? г) при чем тут запросы к БД? Сформулируй более четкие вопросы и раскрой смысл написанного. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2009, 01:03 |
|
||
|
(JS) JQuery непонятное поведение обработчика на асинхронных данных
|
|||
|---|---|---|---|
|
#18+
IDVsbruck, тогда выкладываю весь код Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. Этот скрипт обрабатывает таблицу с class=livetable собственно скрипт прописан в отдельном файле. таблицу получаю через ajax. Комментарии по логике скрипта дал в его теле. Проблема в том что когда я закончил редактирование ячейки и нажал enter запрос уходит несколько раз не сервер, Причем это количество все время разное. Все начинается с 2 отправок. Затем если редактировать ту же самую ячеку ещё раз данные уже уйдут 4 раза. и т.д. максимум доходил до 10 отправок за 1 нажатие enter. Почему так себя ведет не ясно. IDVsbruckа) имхо неправильно проверять наличие чилда - надо делать универсально; я 5 часов искал как его загрузить. тот вариант который был в скрипте оказался единственно произведенно-рабочим. была мысль через :children но как его привязать к $(this) я нигде не нашел и понял что вязать :children и все что тут можно только с конструкциями вида $("путь к элементу:сhildren") но никак не $(this+":children"); IDVsbruckб) непонятна таблица, "которая подгружается асинхронно" - надо видеть как; Таблица грузиться в виде function loadtbl(){ $.ajax({только параметры})}) получается стандартная таблица 5*5 IDVsbruckв) когда ты ловишь "проходы" и что это такое вобще? под этим я хотел сказать что вызвав функцию 1 раз ощущение такое что она либо где то в кэш заседает и там складывается либо как будто её запускаю много раз. Про г можно забыть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2009, 02:36 |
|
||
|
|

start [/forum/topic.php?fid=22&msg=36085668&tid=1454530]: |
0ms |
get settings: |
5ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
163ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
23ms |
get tp. blocked users: |
1ms |
| others: | 209ms |
| total: | 423ms |

| 0 / 0 |
