var c=gr[gr.length-1];   
  for(var i=0;i<gr.length;i++){
             
                $.post('getMyFriendsByGroupId',{gid:gr[i].id},function(data){
                    var a= '<h2>'+c.gname+'</h2><ul>';//这里的c永远都是最是一个对象  应该怎么修改
                    eval('var fr='+'('+data+')');
                    for(var y=0;y<fr.length;y++){
                        var b=fr[y].nickname;
                        a+='<li>'+b+'</li>';
                    };
                    a+='</ul>';
                    alert(a);
                    $(a).appendTo('.group');
                });
            }

解决方案 »

  1.   

    你这是异步操作,改成post改成ajax同步操作就好了
      

  2.   

    function initFriend(){
            $.post('getAllGroup',{},function(date){
                eval('var gr='+'('+date+')');
                for(var i=0;i<gr.length;i++){
                    var c=gr[i];    
    //此处的$.post换成$.ajax,$.post默认的是异步操作。你想象一下数据都没有加载出来,但是程序依旧在往下走,肯定没数据了
                    $.post('getMyFriendsByGroupId',{gid:gr[i].id},function(data){
                        var a= '<h2>'+c.gname+'</h2><ul>';//这里的c永远都是最是一个对象  应该怎么修改
                        eval('var fr='+'('+data+')');
                        for(var y=0;y<fr.length;y++){
                            var b=fr[y].nickname;
                            a+='<li>'+b+'</li>';
                        };
                        a+='</ul>';
                        alert(a);
                        $(a).appendTo('.group');
                    });
                }
            });
        };
      

  3.   

    $.ajax({
    async:false,
    type:"POST",
    url:"getMyFriendsByGroupId",
    data:{gid:gr[i].id},
    success:function(data){
    var a= '<h2>'+c.gname+'</h2><ul>';//这里的c永远都是最是一个对象  应该怎么修改
                        eval('var fr='+'('+data+')');
                        for(var y=0;y<fr.length;y++){
                            var b=fr[y].nickname;
                            a+='<li>'+b+'</li>';
                        };
                        a+='</ul>';
                        alert(a);
                        $(a).appendTo('.group');}})
      

  4.   

    你可以把下面的post改为一个方法,然后c作为参数传递
      

  5.   

    膜拜 问题解决 谢谢crab890715