Cannot read property 'getAttribute' of null

//data: para,

//重新传递参数

data: { city: citycode, startTime: STime, endTime: ETime, Status: Status },//para,

报错位置定位在

myChart = ec.init(document.getElementById(container));//'main'改成container

myChart 是个全局变量

改成局部变量

        //加个局部变量

        var myChartbind;



http://blog.csdn.net/you23hai45/article/details/51595108

1、错误描述

     谷歌浏览器


      火狐浏览器


[html]  view plain  copy
  1. TypeError: Cannot read property 'getAttribute' of null  
  2.     at Object.s.init (echarts-all.js:1)  
  3.     at buildChart (map.js:720)  
  4.     at b.$scope.queryChart (map.js:138)  
  5.     at map.js:175  
  6.     at angular.min.js:146  
  7.     at e (angular.min.js:43)  
  8.     at angular.min.js:45  

2、错误原因

     用echarts编写饼图时,利用随机数生成数据源,并用定时器定时刷新图形

[html]  view plain  copy
  1. window.setInterval(randomData(),1000);  
     但是在重新获取饼图容器时出现这个错误

     由于echarts图形ID是由后台传输过来的,并且是根据图形数据一起传过来,出现了图形容器还未生成,但是数据已经来了,这样就会出现这个问题:找不到图形容器


3、解决办法  

(1)如果图形数据和图形ID一起传输过来,先保证图形容器已存在,后生成图形;可以利用定时器延后图形数据

(2)可以将图形数据和图形ID分为两个请求接口,分别同步进行,先保证图形容器存在,然后再生成图形

猜你喜欢

转载自blog.csdn.net/u010082526/article/details/79024874