当我使用jQuery Ajax执行异步请求时,有时响应会在800毫秒内快速返回,有时响应很慢,响应以2.50s(平均)返回,有时会挂起,并只显示加载图像。我不确定是因为我的PHP代码还是jQuery Ajax代码。我送使用jQuery Ajax的一些值:jQuery Ajax请求的响应速度变化
function get_detail_product(obj)
{
var id = obj.id ;
var $this = jQuery('#'+id);
var Thumb = jQuery('#Scroller div.Container') ;
jQuery.each(Thumb , function(){
jQuery(this).css('border' , '#ccc 2px solid');
});
$this.parent().css('border' , '#ff8500 2px solid') ;
var load_area = jQuery('.detail') ;
//ajax request
load_area.html("");
load_area.html('
Loding ...
jQuery.ajax({
url: 'index.php?module=product&popup=on ',
type: 'POST',
data: 'pid=' + id ,
success: function(result) {
jQuery('#response').remove();
load_area.html(result);
jQuery('#loading').fadeOut(500, function() {
jQuery(this).remove();
});
}
});
}
,并在PHP文件,我有以下代码检索请求的数据:
//ajax requests
if(isset($_POST['subcatid']) && is_numeric($_POST['subcatid']))
{
$subcatid = $_POST['subcatid'] ;
$products = $dbc->getAll("select * from xxproduct where xsubcatid='$subcatid'") ;
//send result
echo '
foreach ($products as $p) : echo '
';endforeach ;
echo '
';}
我不知道,如果你能找到我的代码中的任何错误,造成延误;另外我使用PEAR DB对象与数据库进行交互。
当我在这个页面中键入我的问题的标题时,建议将在大约500毫秒内返回。为什么这个Ajax交互如此之快,但我的不是?
2009-07-12
mehdi