async:false同步请求,浏览器假死

// 异步请求导致数据错乱
// function get_num(){
    // $("input[name='monitor']").eq(1).attr('checked',true);
    // $("input[name='monitor']").next('label').removeClass("ui-state-active");
    // $("input[name='monitor']").eq(1).next('label').addClass("ui-state-active");
    // var eq = 0;
    // for(var genre_type=1;genre_type<=11;genre_type++){
        // $.post(site_url+'/order_cast/get_num/genre_type/'+genre_type,{},function(data){
            // $("input[name='monitor']:eq("+eq+")").next('label').find('dfn').text(data);
            // eq++;
        // });
    // }
// }

// Deferred也解决不了问题  http://www.cnblogs.com/panmy/p/5651732.html
// function get_num(){
    // $("input[name='monitor']").eq(1).attr('checked',true);
    // $("input[name='monitor']").next('label').removeClass("ui-state-active");
    // $("input[name='monitor']").eq(1).next('label').addClass("ui-state-active");
    // var eq = 0;
    // for(var genre_type=1;genre_type<=11;genre_type++){
        // $.when(request_ajax(genre_type)).done(function(data){
            // $("input[name='monitor']:eq("+eq+")").next('label').find('dfn').text(data);
            // eq++;
        // });
    // }
// }
// function request_ajax(genre_type){
    // var defer = $.Deferred();
    // $.post(site_url+'/order_cast/get_num/genre_type/'+genre_type,{},function(data){
        // defer.resolve(data);
    // });
    // return defer.promise();
// }

// 同步 导致浏览器假死
// function get_num(){
    // $("input[name='monitor']").eq(1).attr('checked',true);
    // $("input[name='monitor']").next('label').removeClass("ui-state-active");
    // $("input[name='monitor']").eq(1).next('label').addClass("ui-state-active");
    // for(var genre_type=1;genre_type<=11;genre_type++){
        // $.ajax({async:false,beforeSend:function(){$('.wait').hide();},type:'get',url:site_url+'/order_cast/get_num/genre_type/'+genre_type,success:function(data){$("input[name='monitor']:eq("+(genre_type-1)+")").next('label').find('dfn').text(data);}});
    // }
// }

// 异步请求导致数据错乱 request_ajax写一函数
function get_num(){
    $("input[name='monitor']").eq(1).attr('checked',true);
    $("input[name='monitor']").next('label').removeClass("ui-state-active");
    $("input[name='monitor']").eq(1).next('label').addClass("ui-state-active");
    for(var genre_type=1;genre_type<=11;genre_type++){
        request_ajax(genre_type);
    }
}
// complete:function(XHR,TS){XHR=null} // 回收资源,避免ajax请求过多,导致内存溢出
function request_ajax(genre_type){
    $.ajax({url:site_url+'/order_cast/get_num/genre_type/'+genre_type,success:function(data){$("input[name='monitor']:eq("+(genre_type-1)+")").next('label').find('dfn').text(data);},complete:function(XHR,TS){XHR=null}});
}

 

posted @ 2016-11-25 15:43  蚂蚁羽  阅读(1903)  评论(0)    收藏  举报