Как ждать ответа в $.пост с jQuery

PHP возвращает значение с задержкой 1-2 секунды jQuery.post не ждет ответа.

Как вы думаете, возможно ли исправить эту проблему и ждать ответа?

    $.post( sSource, aoData, function (data) {    
        oCache.lastJson = jQuery.extend(true, {}, data);
        if ( oCache.iCacheLower != oCache.iDisplayStart )
        {
            data.aaData.splice( 0, oCache.iDisplayStart-oCache.iCacheLower );
        }
        data.aaData.splice( oCache.iDisplayLength, data.aaData.length );
         abc(oCache);
        fnCallback(data); 
    },"json" );

Примечание та же функция с get работает хорошо

    $.getJSON( sSource, aoData, function (json) { 
        /* Callback processing */
        oCache.lastJson = jQuery.extend(true, {}, json);

        if ( oCache.iCacheLower != oCache.iDisplayStart )
        {
            json.aaData.splice( 0, oCache.iDisplayStart-oCache.iCacheLower );
        }
        json.aaData.splice( oCache.iDisplayLength, json.aaData.length );

        fnCallback(json)
    } );

1 ответов


$.post является асинхронным, вам нужно использовать $.ajax и установите async в false, таким образом, Вы сможете дождаться ответа. Подробнее об этом можно прочитать здесь:http://api.jquery.com/jQuery.ajax/