$(document).ready(function(){
//设置出发日期段和到达日期段的初值
$("#takeOffTimeStart").attr("value","00:00:00");
$("#takeOffTimeEnd").attr("value","23:59:00");
$("#takeOnTimeStart").attr("value","00:00:00");
$("#takeOnTimeEnd").attr("value","23:59:00");
        var stack = new Array;
       var airCompany = new Array;
var value;
var minPrice;
var maxPrice;
var index;
var counts;
$("a>img[title=结果过滤]").click(function(){
               $("#popup_layer_query").show();//这个是一个DIV 提示用户“正在查询请稍后”/**     下面是一个过滤的算法*/
counts = 0;
airCompany = new Array;
var $takeOffTimeStart = $("#takeOffTimeStart");
         stack[0] = $takeOffTimeStart.val();
         var $takeOffTimeEnd = $("#takeOffTimeEnd");
         stack[1] = $takeOffTimeEnd.val();
         var $takeOnTimeStart = $("#takeOnTimeStart");
         stack[2] = $takeOnTimeStart.val();
         var $takeOnTimeEnd = $("#takeOnTimeEnd");
         stack[3] = $takeOnTimeEnd.val();
        
         $("input[name=airline_company]:checked").each(function(i){
         airCompany[i] = $(this).val();
         });
        
value = $("#Slider1").val();
index = value.indexOf(";");
minPrice = value.substring(0,index);
maxPrice = value.substring(index+1,value.length);
//选择tr中的每一个table并循环
$("table.flight_list_wrap tr:.line table").each(function(i){
//选择当前table下种title为price中td的值
var $priceText = $("table.flight_list_wrap tr:.line table td[title=price]:eq("+i+")").text();
//选择当前table下td存在span,并取得它的值
var $airCompany = $("table.flight_list_wrap tr:.line table td span:eq("+i+")").text();
//选择当前table下种title为time中td的值
var $time = $("table.flight_list_wrap tr:.line table td[title=time]:eq("+i+")").text();
var index  = $priceText.indexOf("¥");
var price = $priceText.substring(index+1,$priceText.length);
//如果航班信息中的航空公司在选择的航空公司当中,把bool的值设置为true
var bool = false;
if(airCompany.length>0){
for(j=0;j<airCompany.length;j++){
if($airCompany==airCompany[j]){
bool = true;
}
}
}else{
bool = true;
}
//把取得到得数据截取
var subStart =  $time.substring(0,5)+":00";
var subEnd =  $time.substring(5,10)+":00";
//满足全部的过滤条件的航班信息显示出来
if(parseFloat(price)>=parseFloat(minPrice) && parseFloat(maxPrice)>=parseFloat(price) && 
$toDate(stack[0])<=$toDate(subStart) &&$toDate(subStart)<=$toDate(stack[1]) && 
$toDate(stack[2])<=$toDate(subEnd) && $toDate(subEnd)<=$toDate(stack[3])&&bool){
//显示航班信息
$(this).parent().show();
counts++;
}else{
//隐藏航班信息
$(this).parent().hide();
}
});
          $("#popup_layer_query").hide();//隐藏DIV 提示用户“正在查询请稍后” $("#flightListCount").html(counts);
});问题:$("#popup_layer_query").show();这句话,在过滤算法执行完才执行。在 $("#popup_layer_query").show();后加alert("fdf");弹出层则会和输出的提示一起出现。要是没有alert语句。这过滤完之后才执行$("#popup_layer_query").show();之后立马执行$("#popup_layer_query").hide();就看不出效果。我要的是在结果算法执行之前就执行$("#popup_layer_query").show();调出“正在查询,请稍后”。注意:我的页面不跳转,只在本页面过滤数据。