highcharts中为什么不能使用ajax传回来的数组? 求帮助 ,好几天解决不了

$(function(){
var idaccount=window.parent.frames["upFrame"].idaccount;
var xmlhttp=new XMLHttpRequest();
//ajax返回值

    var arr;

    xmlhttp.open("GET","ajaxuserbloodpressure.php?idaccount="+idaccount,true);
        xmlhttp.send();

xmlhttp.onreadystatechange=function(){
if(xmlhttp.readyState== 4 && xmlhttp.status== 200 )
{

            arr=xmlhttp.responseText;
            var arr_obj=eval(arr); //ajax返回值变换为json数组对象,arr_obj这个时候为 //数组5,3,7
            var ceshi=[1,5,54];

$('#lineChart').highcharts({
chart: {
type: 'line' ,
zoomType: 'x'
},
title: {
text: '曲线'
},

yAxis: {
min: 0,
title: {
text: '值'
}
},

               plotOptions: { 
                   column: { 
                       pointPadding: 0.2, 
                       borderWidth: 0 
                   } 
               }, 
               series: [{ 
                   name: '高', 
                  data: [110,7,4]   //如果在这里用 arr_obj,就不能画图,如果用data:ceshi
                                                      //就可以画图 
               }, { 
                   name: '低', 
                   data: [2,4,1]

               }] 
           }); 

            }

        }

});

将你的ajax改为同步的,而且你的arr_obj是内部变量,外部访问不了,直接使用arr变量就行了

 var xmlhttp=new XMLHttpRequest();
//ajax返回值
    var arr;
    xmlhttp.open("GET","ajaxuserbloodpressure.php?idaccount="+idaccount,false);///同步,不需要回调
        xmlhttp.send();
arr=xmlhttp.responseText;
arr=eval('('+arr+')')/////////
$('#lineChart').highcharts({ ///.....
series: [{ 
                   name: '高', 
                  data:arr////////////////////
               }

我的状态转换函数onreadystatechange里面包含$('#lineChart').highcharts({///// ,也就是异步回调之后才会作图,我可以把它调整到前面。如下
$(function(){

  var idaccount=window.parent.frames["upFrame"].idaccount; 
   var xmlhttp=new XMLHttpRequest();   
    var arr;

    xmlhttp.onreadystatechange=function(){
        if(xmlhttp.readyState== 4 && xmlhttp.status== 200 )
        {    
            arr=xmlhttp.responseText;
            arr=eval('('+arr+')');

            var ceshi=[1,5,54];             
            alert(arr);

            $('#lineChart').highcharts({ 
                chart: { 
                    type: 'line' ,
                    zoomType: 'x'
                }, 
                title: { 
                    text: '曲线' 
                }, 


                yAxis: { 
                    min: 0, 
                    title: { 
                        text: '值' 
                    } 
                }, 

                plotOptions: { 
                    column: { 
                        pointPadding: 0.2, 
                        borderWidth: 0 
                    } 
                }, 
                series: [{ 
                    name: '高', 
                    data: arr

                }, { 
                    name: '低', 
                    data: [2,4,1]

                }] 
            }); 

            }

        }

    xmlhttp.open("GET","ajaxuserbloodpressure.php?idaccount="+idaccount,true);
        xmlhttp.send();

})

我的状态转换函数onreadystatechange里面包含$('#lineChart').highcharts({///// ,也就是异步回调之后才会作图,我可以把它调整到前面。如下
$(function(){

  var idaccount=window.parent.frames["upFrame"].idaccount; 
   var xmlhttp=new XMLHttpRequest();   
    var arr;

    xmlhttp.onreadystatechange=function(){
        if(xmlhttp.readyState== 4 && xmlhttp.status== 200 )
        {    
            arr=xmlhttp.responseText;
            arr=eval('('+arr+')');

            var ceshi=[1,5,54];             
            alert(arr);

            $('#lineChart').highcharts({ 
                chart: { 
                    type: 'line' ,
                    zoomType: 'x'
                }, 
                title: { 
                    text: '曲线' 
                }, 


                yAxis: { 
                    min: 0, 
                    title: { 
                        text: '值' 
                    } 
                }, 

                plotOptions: { 
                    column: { 
                        pointPadding: 0.2, 
                        borderWidth: 0 
                    } 
                }, 
                series: [{ 
                    name: '高', 
                    data: arr

                }, { 
                    name: '低', 
                    data: [2,4,1]

                }] 
            }); 

            }

        }

    xmlhttp.open("GET","ajaxuserbloodpressure.php?idaccount="+idaccount,true);
        xmlhttp.send();

})