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,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) } );
解决方法
$.post是异步的,你需要使用$.ajax并将async设置为false,这样你就可以等待响应了.
你可以在这里阅读更多相关信息: http://api.jquery.com/jQuery.ajax/
你可以在这里阅读更多相关信息: http://api.jquery.com/jQuery.ajax/