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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> json, синхронный вызов 
:(
    Опции темы
ravnur
Дата 5.4.2009, 21:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Код

<script type="text/javascript">
    //<![CDATA[
        var from = 650;
        var to = 1200;
        alert('started');
        $.ajax({
                async: "false",
                type: 'GET',
                url: 'minmax.php',            
                dataType : "json",                    
                success : function (data, textStatus) {
                   var from = data.values[0].from;
                   to = data.values[0].to;
                   alert('in func');
                }
         });

         alert('outer');

    .............    

    // -->
    </script>


в хидере страницы есть такой код, работающий при обновлении страницы. несмотря на то, что вызов является Cинхронным порядок показа сообщений такой:
- started
- outer
- in func
хотя, по идее, "in func" должен идти вторым.
вопрос: как сделать вызов json Действительно синхронным?

PM MAIL   Вверх
rabbitObject
Дата 13.5.2009, 18:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



По моему все правильно... Сначала у тебя выводится "started", потом создается объект, который передается как параметр в метод ajax(), дальше выводится "outer". А вот когда приходит аяксовый ответ тогда вызывается функция-обработчк:
Код

function (data, textStatus) {
    var from = data.values[0].from;
    to = data.values[0].to;
    alert('in func');
}

..., где вызывается алерт "in func"... Если ты хочешь, чтобы какая-либо функция вызывалась только после того, как получен ответ через ajax -  вызывай ее в обработчике:

Код


var from = 650;
var to = 1200;

function somefunc() {
    // some code
    alert("outer");
}

alert('started');

$.ajax({async: false, // да, и сюда передавать нужно boolean значение вместо string
             type: 'GET',
             url: 'minmax.php',            
             dataType: "json",                    
             success: function (data, textStatus) {
                 from = data.values[0].from;
                 to = data.values[0].to;
                 alert('in func');
                 somefunc(); // call somefunc 
             }
         });



Это сообщение отредактировал(а) rabbitObject - 13.5.2009, 18:46
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




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


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

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