easyui Datagrid查询报错Uncaught TypeError:Cannot read property 'length' of undefined

1.问题描述

easyui中datagrid执行loadData方法出现如下异常:Cannot read property ‘length‘ of undefined

2.一开始怀疑是js或者页面的问题,然后从早上干到下午,网上各种方法用尽了就是不行!

最后发现规律了:

使用mybatis从数据库查询返回的List不报错,但是自己new的ArrayList总是报错!

后来发现原来mybatis返回的不是ArrayList!而是PageList!

3.解决问题

PageList中有个参数Paginator包含了page(当前页), limit(每页显示条数), totalCount(总记录数),但是ArrayList就没有这个参数了。

PageList是ArrayList的子类!

知道了原因,就好办了!把你new的ArrayList改成PageList!代码如下:

原代码:

  1. List<MsgInfo> list=new ArrayList<MsgInfo>();

修改后代码:

  1. Paginator paePaginator=new Paginator(page, pageSize, totalCount);
  2. List<MsgInfo> list=new PageList<MsgInfo>(paePaginator);

然后return list;

4.答题解惑

可能你用浏览器查看返回的json数据时看不到page(当前页), limit(每页显示条数), totalCount(总记录数)这些信息,但是easyUI能解析到!

原因可能是因为浏览器任务这些信息类似于请求的头信息一样直接过滤了所以你看不到,但是会返回给easyUI。

原文链接:http://blog.csdn.net/xuxile/article/details/50548285

easyui Datagrid查询报错Uncaught TypeError:Cannot read property 'length' of undefined

时间: 2024-10-21 14:30:19

easyui Datagrid查询报错Uncaught TypeError:Cannot read property 'length' of undefined的相关文章

jQuery mobile报错 Uncaught TypeError: Cannot read property &#39;concat&#39; of undefined

写一个jQuery mobile的demo <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="styl

ueditor禁用编辑的时候报错:Uncaught TypeError: Cannot read property &#39;contentEditable&#39; of undefined

解决方案 报错的代码片段↓ //初始化编辑器 var conEditor = UE.getEditor('id_Test'); //编辑器.禁用 conEditor.setDisabled(); 修复后代码片段↓ //初始化编辑器 var conEditor = UE.getEditor('id_Test'); //对编辑器的操作最好在编辑器ready之后再做 conEditor.ready(function () { //编辑器.禁用 conEditor.setDisabled(); }) u

当使用npm run build的时候报错:TypeError: Cannot read property &#39;thisCompilation&#39; of undefined

最近接手公司前端外包出去的的项目,然后在npm run build的时候遇到了两个问题. 第一点是  A complete log of this run can be found in:npm ERR!     C:\Users\90422\AppData\Roaming\npm-cache\_logs\2018-04-28T09_26_42_435Z-debug.log 这个问题很简单,主要是npm自己报错了,更新npm 即可.(奇怪的只是这个项目需要这样,其他项目并没有这个问题,所以还需要

vue报错 Uncaught TypeError: Cannot read property ‘children ’ of null

Uncaught TypeError: Cannot read property 'children ' of null ratings未渲染完毕,就跳走goods了,取消默认跳转,即可

Uncaught TypeError: Cannot read property &#39;msie&#39; of undefined

Uncaught TypeError: Cannot read property 'msie' of undefined 因为图方便,抄了别人写的一个jquerry插件,运行时“var pos = ($.browser.msie && parseInt($.browser.version) <= 6 ) ? 'absolute' : 'fixed'; ”报了Uncaught TypeError: Cannot read property 'msie' of undefined的错误.

[Sencha ExtJS] 关于build production后,浏览器运行报错&#39;Uncaught TypeError: c is not a function&#39;

原文:http://blog.csdn.net/lovelyelfpop/article/details/51328783 估计很多人用 ExtJS6 + Sencha Cmd 6 的时候,遇到过一种情况:开发的时候明明正常的,build之后运行就报了下面的错误 Uncaught TypeError: c is not a function 心里一万个草泥马奔腾:What the hell is this?(这TM什么JB玩意?) 其实根本原因是你忘记了requires某个类导致的. 比如你这样

android webView 图片加载不出来 后台报错Uncaught TypeError: Cannot call method &#39;getElementsByTagName&#39; of null

在之前,webView加载图片完全没有问题.直到前端H5开发换新的加载图片的方式,导致图片忽然加载不出来了. 从后台日志看到了webview 打印了报错信息 Cannot call method 'getElementsByTagName' of null 我怀疑是不是由于此处报错终止了图片加载的进程. 分析此处错误出现的原因: 由于调用的H5界面的js其中的写法不规范,webView在加载的时候,调用的doom模型为空,导致了其图片没有加载出来 解决办法: 在客户端webView.getSet

控制台报错 Uncaught TypeError: $(...).tap is not a function

使用zepto报错 Uncaught TypeError: $(...).tap is not a function 我加载了一下插件 <script src="js/zepto.js"></script><script src="js/event.js"></script><script src="js/touch.js"></script><script src=&

jS Ajax 上传文件报错&quot;Uncaught TypeError: Illegal invocation&quot;

jS Ajax 上传文件报错"Uncaught TypeError: Illegal invocation" query-3.1.1.min.js:4 Uncaught TypeError: Illegal invocation 错误原因: jQuery Ajax 上传文件处理方式, 使用ajax向后台发送数据时其中的图片数据的参数类型为file,属于对象,而不是一个字符串值.导致错误的出现 var formData = new FormData(); formData.append(