资讯专栏INFORMATION COLUMN

jqGrid的rowNum属性默认值、-1情况的介绍

oneasp / 2233人阅读

摘要:最近做了一个用到了的项目,在设置属性的时候遇到了坎坷属性的默认值为,当你不设置时,每页最多只给你显示条数据。

最近做了一个用到了jqGrid的项目,在设置rowNum属性的时候遇到了坎坷...

rowNum属性的默认值为20,当你不设置时,每页最多只给你显示20条数据。

但是,当我们不想设置最大的数据条数时,我们还想显示全部数据怎么办,网上说设置为 -1 ,这时问题就出现了,这么设置在画面上会发现数据少了一条...坑啊...

为了解决这个问题,无奈只能开始调试...

最后发现问题发生点(jquery.jqGrid.src

      var queryResults = query.select(),
      recordsperpage = parseInt(ts.p.rowNum,10),
      total = queryResults.length,
      page = parseInt(ts.p.page,10),
      totalpages = Math.ceil(total / recordsperpage),
      retresult = {};
      queryResults = queryResults.slice( (page-1)*recordsperpage , page*recordsperpage );
      query = null;
      cmtypes = null;
      retresult[ts.p.localReader.total] = totalpages;
      retresult[ts.p.localReader.page] = page;
      retresult[ts.p.localReader.records] = total;
      retresult[ts.p.localReader.root] = queryResults;
      retresult[ts.p.localReader.userdata] = ts.p.userData;
      queryResults = null;
      return  retresult;

请重点看这段代码

queryResults = queryResults.slice( (page-1)*recordsperpage , page*recordsperpage );

当rowNum属性值为-1时,recordsperpage 会为 -1

此时执行.slice函数就有问题了,此时函数相当于queryResults.slice(0,-1),小伙伴们可以去查查.slice函数的API,大体意思就是

.slice(start,end) 返回区间为start 到 end位置的元素,请注意,如果是负数,则代表的意思是从数组尾部开始算起的元素

这回明白为什么数据会少了一条吧...

提供一种修改方式,添加一个条件判断吧

 var queryResults = query.select(),
      ...
      if (recordsperpage != -1){
      queryResults = queryResults.slice( (page-1)*recordsperpage , page*recordsperpage );
      }
      ...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/102174.html

相关文章

  • SpringBoot 仿抖音短视频小程序开发(三)

    摘要:仿抖音短视频小程序开发一项目的简介仿抖音短视频小程序开发二项目功能分析与具体实现源代码仿抖音短视频小程序开发全栈式实战项目短视频后台管理系统小程序的后台管理系统涉及的技术栈框架一用户列表的获取与分页前端代码用户列表展示的表格底部 SpringBoot 仿抖音短视频小程序开发(一):项目的简介(https://segmentfault.com/a/11...SpringBoot 仿抖音短...

    songze 评论0 收藏0
  • 常用前端插件V1

    摘要:轻量级,功能强大的日期选择器,兼容和不依赖于其他库,少,使用作为界面的图标兼容在配置参数中,所有的类型为或的参数都可以通过属性在标签中进行设置例如月份可以滚动,年份可以手动输入是否启用日期选择是否启用秒选择器设置日期显示格 some jquery plugins are used for labelMangerSystem,some things may not be complete...

    xiao7cn 评论0 收藏0
  • 第三课(spring-boot+mybatis+jqgrid)

    摘要:课程目标完成与与的的集成处理数据课程计划使用完成博客后台管理员列表的搜索课程分析想要完成列表的搜索,就必须对按提交搜索条件进行逻辑判断组织也就是动态步骤加入依赖使用配置使用使用注解方式动态动 课程目标 完成与spring boot 与的mybatis的集成处理数据curd 课程计划 使用mybatis完成博客后台管理员列表的jqgird搜索 课程分析 想要完成列表的搜索,就必须对sql...

    terasum 评论0 收藏0
  • Excel大批量数据导入和导出,如何做优化?

    摘要:并且在对的抽象中,每一行,每一个单元格都是一个对象。对支持使用官方例子需要继承,覆盖方法,每读取到一个单元格的数据则会回调次方法。概要Java对Excel的操作一般都是用POI,但是数据量大的话可能会导致频繁的FGC或OOM,这篇文章跟大家说下如果避免踩POI的坑,以及分别对于xls和xlsx文件怎么优化大批量数据的导入和导出。一次线上问题这是一次线上的问题,因为一个大数据量的Excel导出...

    Tecode 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<