当前位置: 首页 > news >正文

jQuery EasyUI使用教程之使用虚拟滚动视图显示海量数据

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

数据网格的虚拟滚动功能可以用来显示大量的数据记录而无需分页。当滚动条垂直滚动时,数据网格执行Ajax请求来加载和刷新现有的记录。整个刷新的操作过程是平稳无闪烁的。在本教程中,我们将创建一个数据网格,并运用虚拟滚动功能从服务器中加载数据。

jQuery EasyUI最新试用版下载请猛戳>>

使用虚拟滚动视图显示海量数据

查看jQuery EasyUI演示

创建数据网格

想要应用数据网格的虚拟滚动功能,将'view' 属性设置为'scrollview'。用户从数据网格的扩展中下载scrollview,同时在页面头部引用scrollview文件。

<script type="text/javascript" src="http://www.jeasyui.com/easyui/datagrid-scrollview.js"></script>

< table id = "tt" class = "easyui-datagrid" style = "width:700px;height:300px" title = "DataGrid - VirtualScrollView" data-options="view:scrollview,rownumbers:true,singleSelect:true,
url:'datagrid27_getdata.php',autoRowHeight:false,pageSize:50">
< thead >
< tr >
< th field = "inv" width = "80" >Inv No</ th >
< th field = "date" width = "100" >Date</ th >
< th field = "name" width = "80" >Name</ th >
< th field = "amount" width = "80" align = "right" >Amount</ th >
< th field = "price" width = "80" align = "right" >Price</ th >
< th field = "cost" width = "100" align = "right" >Cost</ th >
< th field = "note" width = "110" >Note</ th >
</ tr >
</ thead >
</ table >

请注意在这里我们不需要使用pagination属性,但pageSize属性是必需的,这样执行ajax请求时数据网格将从服务器获取指定数量的记录。

服务器端代码

datagrid27_getdata.php

$page = isset( $_POST [ 'page' ]) ?  intval ( $_POST [ 'page' ]) : 1;
$rows = isset( $_POST [ 'rows' ]) ?  intval ( $_POST [ 'rows' ]) : 50;
 
$items array ();
date_default_timezone_set( 'UTC' );
for ( $i =1;  $i <= $rows $i ++){
$index $i +( $page -1)* $rows ;
$amount = rand(50,100);
$price = rand(10000,20000)/100;
$items [] =  array (
'inv' => sprintf( "INV%04d" , $index ),
'date' =>  date ( 'Y-m-d' ,time()+24*3600* $i ),
'name' =>  'Name' $index ,
'note' =>  'Note' $index ,
'amount' =>  $amount ,
'price' => sprintf( '%01.2f' , $price ),
'cost' => sprintf( '%01.2f' , $amount * $price )
);
}
$result array ();
$result [ 'total' ] = 8000;
$result [ 'rows' ] =  $items ;
echo json_encode( $result );

下载EasyUI示例:easyui-datagrid-demo.zip

有兴趣的朋友可以点击查看更多有关jQuery EasyUI的教程>>

转载于:https://my.oschina.net/u/2317468/blog/663573

相关文章:

  • DevOps团队结构类型汇总:总有一款适合你
  • CSS学习笔记(五)背景
  • 独家!支付宝小程序技术架构全解析
  • linux关闭ssh连接
  • [ JavaScript ] 数据结构与算法 —— 链表
  • [Redis]Redis的数据类型
  • Leetcode题目:Balanced Binary Tree
  • 我是如何设计 Upload 上传组件的
  • 团队项目第一阶段冲刺站立会议6(4月23日)
  • You must use the Role Management Tool to install or configure Microsoft .NET Framework 3.5 SP1
  • 云HBase Spark分析引擎对接云数据库POLARDB
  • Hive基本操作
  • IDEA之配置svn
  • iPhone6 Plus、iPhone6、iPhone5S和之前版本真实分辨率
  • 云计算读书笔记(四)
  • 30秒的PHP代码片段(1)数组 - Array
  • C# 免费离线人脸识别 2.0 Demo
  • Hexo+码云+git快速搭建免费的静态Blog
  • JavaScript 奇技淫巧
  • JavaScript学习总结——原型
  • Java方法详解
  • Linux gpio口使用方法
  • ReactNative开发常用的三方模块
  • vue 配置sass、scss全局变量
  • 成为一名优秀的Developer的书单
  • 从 Android Sample ApiDemos 中学习 android.animation API 的用法
  • 简单实现一个textarea自适应高度
  • 买一台 iPhone X,还是创建一家未来的独角兽?
  • 人脸识别最新开发经验demo
  • 移动互联网+智能运营体系搭建=你家有金矿啊!
  • 云栖大讲堂Java基础入门(三)- 阿里巴巴Java开发手册介绍
  • Nginx惊现漏洞 百万网站面临“拖库”风险
  • 好程序员大数据教程Hadoop全分布安装(非HA)
  • 小白应该如何快速入门阿里云服务器,新手使用ECS的方法 ...
  • $emit传递多个参数_PPC和MIPS指令集下二进制代码中函数参数个数的识别方法
  • (10)ATF MMU转换表
  • (2)Java 简介
  • (C++20) consteval立即函数
  • (delphi11最新学习资料) Object Pascal 学习笔记---第2章第五节(日期和时间)
  • (LeetCode 49)Anagrams
  • (ros//EnvironmentVariables)ros环境变量
  • (转) SpringBoot:使用spring-boot-devtools进行热部署以及不生效的问题解决
  • (转)linux自定义开机启动服务和chkconfig使用方法
  • (转)ORM
  • ****Linux下Mysql的安装和配置
  • .Family_物联网
  • .NET CF命令行调试器MDbg入门(一)
  • .NET HttpWebRequest、WebClient、HttpClient
  • .NET和.COM和.CN域名区别
  • :not(:first-child)和:not(:last-child)的用法
  • @RequestBody与@ResponseBody的使用
  • [ C++ ] STL---string类的使用指南
  • [AutoSar NVM] 存储架构
  • [C++数据结构](31)哈夫曼树,哈夫曼编码与解码
  • [CLickhouse] 学习小计