Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> JQuery. Вернуть результат из $.post 
:(
    Опции темы
Vovan222
Дата 2.6.2011, 17:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 9.9.2010

Репутация: нет
Всего: нет



Всем привет есть такой код:
Код

 function checkRoom(startTime, id_room){
            $.post('ajaxCheckRoom',
                {
                    startTime : startTime,
                    id_room : id_room
                    
                },function(data){

                },'json'
            );
        }

Можно ли как-нибудь из функции checkRoom вернуть значение data?
PM MAIL   Вверх
нуп
Дата 2.6.2011, 18:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ботокодер
**


Профиль
Группа: Участник
Сообщений: 987
Регистрация: 22.6.2009
Где: Кременчуг

Репутация: 8
Всего: 33



Если запрос будет не асинхронный, то можно так сделать :
Код

function checkRoom(startTime, id_room){
     var data = '';
      $.ajax({
        type : 'POST',
        async : false,
        data : id_room,
        success : function(resp_data) { data = resp_data; }
    });
return data;
}


Это сообщение отредактировал(а) нуп - 2.6.2011, 18:05
PM MAIL   Вверх
Vovan222
Дата 2.6.2011, 19:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 9.9.2010

Репутация: нет
Всего: нет



нуп, В том то и дело, что асинхронный
PM MAIL   Вверх
нуп
Дата 2.6.2011, 19:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ботокодер
**


Профиль
Группа: Участник
Сообщений: 987
Регистрация: 22.6.2009
Где: Кременчуг

Репутация: 8
Всего: 33



Та я бы тоже хотел такое увидеть smile 
PM MAIL   Вверх
Gold Dragon
Дата 3.6.2011, 08:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Призрачный
****


Профиль
Группа: Экс. модератор
Сообщений: 6753
Регистрация: 1.3.2004
Где: Россия, Тамбов

Репутация: нет
Всего: 71



сам с этим боролся, но пока не хватило времени полностью осознать, но вот это тебе должно помочь
http://xhtml.co.il/ru/jQuery/%D0%A7%D0%B0%...1%D0%B0_AJAX.3F


--------------------
Нельзя жить в прошлом, оно уже прошло.
Нельзя жить в будущем, оно ещё не наступило.
Нужно жить в настоящем, помня прошлое и думая о будущем!
PM MAIL WWW ICQ   Вверх
Vovan222
Дата 3.6.2011, 09:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 87
Регистрация: 9.9.2010

Репутация: нет
Всего: нет



Gold Dragon, Спасибо за ссылку. Сделал по примеру, все работает:
Код

 checkRoom( startTime, room, function(status){
   if( status ){
           // do something
   }
});

 function checkRoom(startTime, id_room, callback){
            $.post('ajaxCheckRoom',
                {
                    startTime : startTime,
                    id_room : id_room
                    
                },function(status){
                   callback(status);
                },'json'
            );
        }


Только немного не понятно, когда мы пишем
Код

 callback(status);

мы как бы возвращаем status в третий параметр функции  checkRoom
PM MAIL   Вверх
Gold Dragon
Дата 3.6.2011, 09:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Призрачный
****


Профиль
Группа: Экс. модератор
Сообщений: 6753
Регистрация: 1.3.2004
Где: Россия, Тамбов

Репутация: нет
Всего: 71



вот и говорю что с этими обратными вызовами ещё не разобрался smile А так понимаю функция гоняется до тех пор пока не получит содержание статуса. 


--------------------
Нельзя жить в прошлом, оно уже прошло.
Нельзя жить в будущем, оно ещё не наступило.
Нужно жить в настоящем, помня прошлое и думая о будущем!
PM MAIL WWW ICQ   Вверх
нуп
Дата 3.6.2011, 10:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ботокодер
**


Профиль
Группа: Участник
Сообщений: 987
Регистрация: 22.6.2009
Где: Кременчуг

Репутация: 8
Всего: 33



O_O скрипт пойдет дальше выполняться, а когда придет ответ, то выполнится callback  smile 
PM MAIL   Вверх
InfMag
Дата 5.6.2011, 18:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


…
***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 21.11.2004

Репутация: нет
Всего: 4



Просто продолжение каких-либо действий пиши в callback-е. Таков принцип асинхронного кодинга.
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Применение библиотек | Следующая тема »


 




[ Время генерации скрипта: 0.0483 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.