Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.11.2014, 12:59
Аспирант
Отправить личное сообщение для happy_Mikhail Посмотреть профиль Найти все сообщения от happy_Mikhail
 
Регистрация: 31.10.2013
Сообщений: 34

как в jquery в ajax запросе отслеживать изменения длинны ответа.
success: function(data){
/*на стороне сервера крутится цикл и параметр data постоянно 
увеличивается .
 выглядит примерно так
|первая строка|
|вторая строка|
|третья строка|
Мне нужно отслеживать размер data и при его увеличении производить некие действия с последней строкой, например на экран её вывести.
*/
  }
Ответить с цитированием
  #2 (permalink)  
Старый 16.11.2014, 13:32
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Так ты передавай серверу номер, с какой строки тебе нужен результат.
Если у него для тебя что-то новенькое есть - он передаст. Если нету - ответ будет, допустим, пустым.

А постоянно гонять одни и те же данные между клиентом и сервером - ну тупо же ))
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #3 (permalink)  
Старый 16.11.2014, 14:02
Аспирант
Отправить личное сообщение для happy_Mikhail Посмотреть профиль Найти все сообщения от happy_Mikhail
 
Регистрация: 31.10.2013
Сообщений: 34

что-то я не совсем понял. вот например у нас такая серверная сторона
while($users_send_list){
//например тут письмо отравляется 
$send_OK = $mail->send($user_email);
if($send_OK !== false)
echo "Письмо пользователю ".$user_email." отправлено";
}


Вот, а аякс просто запускает скрипт рассылки писем.
как передать то, что Вы предложили?

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

Последний раз редактировалось happy_Mikhail, 16.11.2014 в 14:12. Причина: дополнение
Ответить с цитированием
  #4 (permalink)  
Старый 16.11.2014, 14:14
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

А, то есть у тебя один запрос, а не несколько.
Во-первых, нужно делать flush() после echo. Без этого сервер будет удерживать все строки в буфере, и не отдаст пока не завершится цикл (не отработает скрипт).
Ну а во вторых, success вызывается только по завершению запроса.
Я даже не уверен что задуманное вообще реализуемо через XMLHttpRequest.

Посмотри на событие "progress" (проще без jQuery, хотя нужно посмотреть доки по $.ajax). Его кстати нет в старых браузерах.

Однозначно можно сделать на вебсокете, точно не знаю, но по-моему для этого надо ставить расширение для PHP на сервере. Ну и не кроссбраузерно оно.

Если с progress не получится, то можно попробовать на айфрейме.
__________________
В личку только с интересными предложениями
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
jQuery Ajax ивент krasovsky jQuery 4 11.07.2013 11:55
Как правильно послать XML в POST запросе LowCoder AJAX и COMET 10 15.07.2009 23:20
Как правильно подгрузить jQuery Siton jQuery 4 15.06.2009 09:54
Объясните как вызывается ajax скрипт AddressBook из формы prog90 AJAX и COMET 3 06.06.2009 16:12
как дождаться AJAX ответа scuter Общие вопросы Javascript 3 23.03.2008 05:54