如何在$ .post jQuery中等待响应

时间:2012-05-13 21:01:00

标签: javascript jquery ajax post

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 个答案:

答案 0 :(得分:18)

$ .post是异步的,您需要使用$ .ajax并将async设置为false,这样您就可以等待响应。 您可以在此处详细了解:http://api.jquery.com/jQuery.ajax/