:【解决方法】easyui中datagrid执行loadData方法出现异常

转载:http://blog.csdn.net/zhyl8157121/article/details/19634037

 

问题描述:

easyui中datagrid执行loadData方法出现如下异常:

 

 

  • Cannot read property 'length' of undefined

 

问题代码:
原始代码比较复杂,抽取内容描述如下:

[javascript]  view plain copy print ? 在CODE上查看代码片
 
  1. var data = '{"total":1,"rows":[{"id":"001","name":"哈哈哈","role":"系统管理员"}]}';  
  2. $('#dg').datagrid('loadData', data);   

解决方法:

[javascript]  view plain copy print ? 在CODE上查看代码片
 
  1. var data = '{"total":1,"rows":[{"id":"001","name":"哈哈哈","role":"系统管理员"}]}';  
  2. data = JSON.parse(data);//转换成json对象,必须的!!!不然有异常!!!  
  3. $('#dg').datagrid('loadData', data);   

原因猜测:

loadData方法执行的时候参数必须是JSON对象,而不能是JSON格式的字符串!!!
我以为javascript这种弱类型的不强调这个呢,结果就一直在异常,一直在异常。
折腾了一个下午,终于搞定了,网上查也没有类似的问题,更不要说解决方法了。
估计搞前端的人都有这个概念吧,对我这种前端半吊子的新手,还是很困那的。
记录在此,以惠后人。

你可能感兴趣的:(datagrid)