Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Morris.js每个人缺少标签书写_Javascript - Fatal编程技术网

Javascript Morris.js每个人缺少标签书写

Javascript Morris.js每个人缺少标签书写,javascript,Javascript,先谢谢你。 我有一个问题,在插件中,当我使用ajax创建一个带有“Morris.js”的条形图时,axis的每一个条形图都没有显示信息,但是如果我直接将“json”写入代码,它就可以正常工作,我的错误是什么?代码如下: $(document).ready(function(){ var numberOfSeconds=30*1000; //the interval of refreshing the information of the calls per server var x=g

先谢谢你。 我有一个问题,在插件中,当我使用ajax创建一个带有“Morris.js”的条形图时,axis的每一个条形图都没有显示信息,但是如果我直接将“json”写入代码,它就可以正常工作,我的错误是什么?代码如下:

 $(document).ready(function(){ 

 var numberOfSeconds=30*1000; //the interval of refreshing the information of the calls per server
 var x=getTheInfoAboutTheServers();



//The m_graph contains an information 
   //and build the graph itself later we update the data with the m_graph.setData() function
     var m_graph= Morris.Bar({
            element: 'my_chart',
            data:   x,
            xkey: 'y',
            ykeys: ['a'],
            labels: ['Number of calls']
        });

/**
 * This Function get the number of calls per each server
 * return a JSON object to the morris.js pluggin
 */

function getTheInfoAboutTheServers(){

var inf=null;

$.ajax({

     async: false,    
     type: "POST",
     url : $('#site_url').val()+"index.php/Login_controller/mw_iaa_rawGraphInfoClient",
     dataType: "JSON",
        success: function(data){


            var dataArr=[];

                for (key in data) {
                    if (!isNaN(key)) {
                        var obj = data[key];

                        var mySplitResult = obj['callserver'].split(".");
                        var calls=parseInt(obj['numOfCalls']);


                        dataArr.push({ y: String(mySplitResult[0]), a : calls});
                      }
                  }
            inf=dataArr;

       }
 });    

 return inf;

 }

这是因为$.ajax在函数gettheinfoabouttheserver中异步执行。因此,该方法返回inf的值,即null,因为此时不执行ajax函数


要解决这个问题,您需要在ajax成功方法中调用另一个函数,将json作为参数传递,而不是将其分配给一个变量

谢谢您的回答,但它确实返回了json,我看到了图形,在工具提示中也看到了所有内容,但在axis中,每隔一秒就有一列忽略了它的名称