使用JqGrid来实现列表功能非常方便快捷,但在使用的过程中还会遇到一些定制化的问题。这篇文章来跟大家说一下当列表中数据比较多时,如何实现水平(左右)滚动来确保能够查看完整的信息。

字段较少情况

在字段较少的情况,直接使用即可,无效做其他调整。下面贴一下简单的示例代码:

$(function () {$("#jqGrid").jqGrid({url: baseURL + 'biz/message/list',datatype: "json",colModel: [            { label: 'id', name: 'id', index: 'id', width: 50, key: true },{ label: '标题', name: 'title', index: 'title', width: 80 },           { label: '内容', name: 'content', index: 'content', width: 80 },            { label: '类型', name: 'type', index: 'type', width: 80 ,formatter: function (value, options, row) {if(value == '0'){return '<span class="label label-success">定时</span>';} else if(value == '1'){return '<span class="label label-danger">手动</span>';}}},{ label: '状态', name: 'status', index: 'status', width: 80 ,formatter: function (value, options, row) {if(value == '0'){return '<span class="label label-success">待发送</span>';} else if(value == '1'){return '<span class="label label-default">已发送</span>';}}},{ label: '创建时间', name: 'createTime', index: 'create_time', width: 80 },            { label: '更新时间', name: 'updateTime', index: 'update_time', width: 80 }            ],viewrecords: true,height: 385,rowNum: 10,rowList : [10,30,50],rownumbers: true, rownumWidth: 25, autowidth:true,multiselect: true,pager: "#jqGridPager",jsonReader : {root: "page.list",page: "page.currPage",total: "page.totalPage",records: "page.totalCount"},prmNames : {page:"page", rows:"limit", order: "order"},gridComplete:function(){//隐藏grid底部滚动条$("#jqGrid").closest(".ui-jqgrid-bdiv").css({ "overflow-x" : "hidden" }); }});
});

默认情况下没有开启水平滚动条,无论有多少字段,都会显示在这一屏,字段比较少时无影响。但字段一旦多了,问题就出来了。此种情况下,jqGrid显示的内容的列宽并没有按照设置的列宽显示。列被压缩。则按比例初始化列宽度。

字段较多情况

针对字段较多的情况,官方提供了两个属性来进行解决。

shrinkToFit:false,
autoScroll: true,

shrinkToFit:用来说明当初始化列宽度时候的计算类型,如果为ture,则按比例初始化列宽度。如果为false,则列宽度使用colModel指定的宽度。默认值为true。

autoScroll:如果为ture时,则当表格在首次被创建时会根据父元素比例重新调整表格宽度。如果父元素宽度改变,为了使表格宽度能够自动调整则需要实现函数:setGridWidth。

了解了这两个属性的值之后,我们就可以对上面的代码进行重新修改,以满足需求。

$(function () {$("#jqGrid").jqGrid({url: baseURL + 'biz/message/list',datatype: "json",colModel: [            { label: 'id', name: 'id', index: 'id', width: 50, key: true },{ label: '标题', name: 'title', index: 'title', width: 80 },           { label: '内容', name: 'content', index: 'content', width: 80 },            { label: '类型', name: 'type', index: 'type', width: 80 ,formatter: function (value, options, row) {if(value == '0'){return '<span class="label label-success">定时</span>';} else if(value == '1'){return '<span class="label label-danger">手动</span>';}}},{ label: '状态', name: 'status', index: 'status', width: 80 ,formatter: function (value, options, row) {if(value == '0'){return '<span class="label label-success">待发送</span>';} else if(value == '1'){return '<span class="label label-default">已发送</span>';}}},{ label: '创建时间', name: 'createTime', index: 'create_time', width: 80 },            { label: '更新时间', name: 'updateTime', index: 'update_time', width: 80 }            ],viewrecords: true,height: 385,rowNum: 10,rowList : [10,30,50],rownumbers: true, rownumWidth: 25, autowidth:true,multiselect: true,// 新增的部分shrinkToFit:false, autoScroll: true, pager: "#jqGridPager",jsonReader : {root: "page.list",page: "page.currPage",total: "page.totalPage",records: "page.totalCount"},prmNames : {page:"page", rows:"limit", order: "order"}});
});

当使用上述代码完成调整之后,还需要做的一件事就是将每列数据的width值进行大小的调整,以适合具体的展示效果。

在上述实例中,针对列表还展示了formatter对应函数用来格式化具体数据项的操作,大家也可以进行参考。

原文链接:《JqGrid实现超长水平(左右)滚动条功能》

精品SpringBoot 2.x视频教程

《Spring Boot 2.x 视频教程全家桶》,精品Spring Boot 2.x视频教程,打造一套最全的Spring Boot 2.x视频教程。


程序新视界
公众号“程序新视界”,一个让你软实力、硬技术同步提升的平台

JqGrid实现超长水平(左右)滚动条功能相关推荐

  1. vb6.0 listview隐藏水平方向滚动条_为Vuetify的UI组件添加滚动条

    前言 有必要说明,这其实是一个很简单的功能,用原生实现也非常简单: #preview-zone {overflow-y: auto;overflow-x: hidden;height: 90%;wid ...

  2. iphone4 Safari实现滚动条功能

    iphone4 Safari实现滚动条功能 以 div  使用overflow:auto 后,内容超过div高度,会出现滚动条,但在为iOS的safari上,却不显示滚动条,纠结中,最后发现, 用两根 ...

  3. android listview 滚动条不隐藏,Android ListView隐藏右侧滚动条功能

    关于ListView的滚动条几种情形: 1.默认情况:活动(滚动)时显示,不活动时隐藏. 2.活动和不活动时都显示. 3.活动和不活动时都隐藏. 上述集中情况,均有ListView的以下设置属性方法控 ...

  4. html table水平和垂直滚动条,Ajax: Excel风格的HTML Table输入控件[二]:外部表格与水平垂直滚动条...

    实际效果:  [url]http://www.weiqihome.com/scotttable.jsp[/url] 前一节介绍了内部表格的区域划分与区域标识,这一节介绍外部表格. 外部表格的作用是提供 ...

  5. Java写记事本:文本超出范围时实现滚动条功能

    问题背景 本次Java课程的作业是做一个记事本,能够实现记事本的基本功能,如图所示 问题描述 想要实现内容超出文本框范围时,自动添加垂直滚动条和横向自适应. 添加了JScrollPane scroll ...

  6. navicat表栏上移下移_利用jqgrid实现上移下移单元格功能

    前言 JQGrid是一个在jquery基础上做的一个表格控件,以ajax的方式和服务器端通信. 在表格中常常需要调整表格中数据的显示顺序,我用的是jqgrid,实现原理就是将表中的行数保存到数据库中, ...

  7. CSS——水平(横向滚动条)

    <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8" ...

  8. SQL Server Management Studio 2016的新功能–滚动条

    One of the new enhancements in SQL Server Management Studio 2016 (SSMS) is the Scroll Bars tab, in w ...

  9. C语言窗口水平滚动条,C语言Windows程序设计滚动条

    滚动条由滚动滑块以及两端的滚动箭头组成, 滚动条的作用是当需要显示的内容超过窗口客户区大小时提供上下/左右的翻页使用户能够完整的阅读显示信息 Windows滚动条介绍 滚动条由滚动滑块以及两端的滚动箭 ...

最新文章

  1. Python学习之路1 - 基础入门
  2. C# WinForm中 获得当前鼠标所在控件 或 将窗体中鼠标所在控件名显示在窗体标题上...
  3. 1000种对Java的响应没有死
  4. Android 四大组件学习之Service二
  5. ubuntu需要多大的固态硬盘_Ubuntu16.10 迁移到 SSD
  6. PHP set_error_handler() 函数
  7. python 英文字典-python如何制作英文字典
  8. JS点击图片后图片放大效果
  9. android q mix3,Android Q+5G 小米MIX3流畅播放8K视频
  10. 北航计算机组成原理课程设计-2021秋 PreProject-MIPS-MIPS 汇编程序设计
  11. Linux 文本处理工具——sed
  12. 扣哒世界python CS1 竞技场代码
  13. MOOS-ivp之第一个MOOSApp:向MOOSDB发布数据
  14. BRENDAN MCCAFFREY:自行车大师
  15. java分析内存泄露工具_Eclipse Memory Analyzer(Java内存泄漏分析工具)
  16. Arch/Manjaro pacman安装google-chrome
  17. pycharm快捷键及中文说明【使用翻译工具一条一条翻译】
  18. Google DeepMind的新论文: Spatial Transformer Networks
  19. CSDN博客的第一天
  20. mybatis拦截器实现权限管理

热门文章

  1. 开源商城系统怎么选择?
  2. dnf服务器未响应怎么解决方法,win7玩dnf老是未响应怎么回事_win7玩dnf总是未响应如何解决...
  3. 学习vue饿了吗之模拟后台数据
  4. 2014年11月19日
  5. 脉脉网友出了道 Go 面试题,你能答对吗?
  6. (学习java)水果超市管理系统
  7. MATLAB GUI图形界面设计一个学生管理系统
  8. 周杰伦新歌《说好不哭》上线,程序员哭了......
  9. Python安装教程(Windows10)
  10. 中国用户抢购,特斯拉中国销量环比近乎倍增,中国汽车企业无奈