EasyUI需注意的问题01

一、EasyUI-Datagrid分页

在创建数据表格(DataGrid)的时候,通过设置‘pagination‘ 属性为 true,可以在数据表格的底部生成一个分页工具栏。

<table id="dg" class="easyui-datagrid" 
       url="data/datagrid_data.json"
       pagination="true">
	<thead>
		<tr>
			<th field="xxx" width="80">xxx</th>
                     <th field="xxx" width="80">xxx</th> 
                     <th field="xxx" width="80">xxx</th>
		</tr>
	</thead>
</table>
当我们向指定的url请求数据时,pagination将会发送两个参数到服务器:
page:页面,起始值1
rows:每页显示行数
在分页栏上,一般会显示总共有多少记录,当前显示的记录(第几页);
因此服务器向前端发送数据的时候,除了数据记录之外,还需要传递当前查询总共有多少记录。
而在EasyUI中,向datagrid传递的数据格式必须为字典类型的json数据。
该数据包含两个键:total(当前查询的总记录数)、rows(返回的记录数据)
分页思想:一般的分页会根据page和rows来决定返回的记录,跳过前面的(page-1)*rows条记录,返回剩下的rows条记录(少于rows条则全部返回)。
对数据的筛选一般反正数据库中进行(当应用与数据库不在同一机子时,若在应用所在服务器进行数据筛选,会导致网络传输大量的无效记录,而当记录总数较大的时候,也会占用较多的内存进行数据的筛选)
而在数据库中进行筛选,为了保证每次查到的数据的顺序是一致的,必须对某个唯一列进行排序(一般是主键)。
具体的操作可以为:先查出前(page-1)*rows条记录的id,然后选择记录id不在查出数据之中的数据的前rows条记录(SELECT TOP rows FROM tableName WHERE id not in(SELECT TOP (page-1)*rows id from tableName order by id) order by id)
这种分页当page很大的时候,会过滤掉大量的数据,以至于效率不高。
SQLServer2005提供了一个row_number()函数用于分页,ROW_NUMBER() 就是生成一个顺序的行号,而生成顺序的标准是由后面紧跟的OVER(ORDER BY id)子句决定的:

SELECT TOP rows *  FROM

(
       SELECT top rows ROW_NUMBER() OVER (ORDER BY id) AS RowNo FROM TABLE
) AS A WHERE RowNo >  (page-1)*rows

二、easyui-datetimebox日期时间控件

通过官网的例子为datetimebox控件设置值时,如下:

<input class="easyui-datetimebox" name="birthday" id="dt"
          data-options="required:true,showSeconds:true" value="03/04/2010 12:30:29" style="width:250px;height:30px;">

结果显示的时候,时间部分对正确的,但日期部分确实当前之前(这是为什么呢),当通过getValue函数获取控件的值时,得到的时间格式是:

yyyy-MM-dd hh:mm:ss

于是,试着将时间格式也设置相同,就显示正确了。难道datetimebox只能支持上述的时间格式?

时间: 2024-07-30 21:52:30

EasyUI需注意的问题01的相关文章

easyui前端框架01

一. 三大前端框架的特点 1.easyui=jquery+html4 优点:快速开发.功能齐全 .免费 缺点:不好看.不支持相应式开发 2.bootstrap=jquery+html5 优点: 功能强大.好看.好用.  支持响应式开发 缺点:部分功能收费 3.layui 优点:好看 .功能强大.免费.支持响应式开发 缺点:框架本生bug较多 二. easyui的使用 (layout.tree.tabs  ) easyui的学习路径有:看官方API    看官方demo    http://www

我们有时候想要对别人好,在这之前先想想人家需不需要

我们有时候想要对别人好,在这之前先想想人家需不需要. 01 某女同学特别迷恋某个小鲜肉,手机屏保是他,房间里的海报是他,微博里唯一的关注是他,分组还是“帅帅的老公”. 追星族大家都见过,这没有什么好说的. 关键问题是她逢人就安利她的爱豆,什么唱歌就是天籁之音演戏就是戏仙下凡做综艺就是流量担当,把大家听得一愣一愣的,我觉得这种安利有失公正,就在旁边说了句:我觉得他演戏一般啊. 那姑娘白了我一眼:你懂什么演技,你没看到他演的电影票房多高? 我说:票房高不代表他演得好,导演监制那么厉害,观众当然想去看

170322计算机硬件介绍&amp;&amp;时钟&amp;&amp;中断&amp;&amp;内核态、用户态与系统功能调用&amp;&amp;操作系统分类

一.冯诺依曼计算机 1.1 对第一台电脑提出: (1)二进制代替十进制: (2)程序与数据一起放入内存中运行. 1.2示例:控制(操作码)与数据信息(操作数) 1.3一个典型的PC总线(Bus)结构 1.4华硕P5VD2-MX (1)主芯片组:VIA P4M890/VIA VT8237A(2)内存规格内存类型DDRII(3)总线频率(MHz) FSB 1066MHz(4)扩展插槽 ①显卡插槽PCI-E 16X ②PCI 插槽2条PCI 插槽 ③1条PCI-E 1X(5)IDE 插槽二个IDE插槽

通过mysql show processlist 命令检查mysql锁的方法

作者: 字体:[增加 减小] 类型:转载 时间:2010-03-07 show processlist 命令非常实用,有时候mysql经常跑到50%以上或更多,就需要用这个命令看哪个sql语句占用资源比较多,就知道哪个网站的程序问题了. processlist命令的输出结果显示了有哪些线程在运行,可以帮助识别出有问题的查询语句,两种方式使用这个命令. 1.      进入mysql/bin目录下输入mysqladmin processlist; 2.      启动mysql,输入show pr

mysql 执行状态分析 show processlist

SHOW PROCESSLIST显示哪些线程正在运行.您也可以使用mysqladmin processlist语句得到此信息.如果您有SUPER权限,您可以看到所有线程.否则,您只能看到您自己的线程(也就是,与您正在使用的MySQL账户相关的线程).请参见13.5.5.3节,“KILL语法”.如果您不使用FULL关键词,则只显示每个查询的前100个字符. 本语句报告TCP/IP连接的主机名称(采用host_name:client_port格式),以方便地判定哪个客户端正在做什么. 如果您得到“t

mysql性能优化教程(转)

Mysql 性能优化教程 目录 目录 背景及目标 Mysql 执行优化 认识数据索引 为什么使用数据索引能提高效率 如何理解数据索引的结构 如何理解影响结果集 理解执行状态 常见分析手段 分析流程 总结 Mysql 运维优化 存储引擎类型 内存使用考量 性能与安全性考量 存储压力优化 运维监控体系 Mysql 架构优化 架构优化目标 防止单点隐患 方便系统扩容 安全可控,成本可控 分布式方案 分库&拆表方案 主从架构 故障转移处理 缓存方案 缓存结合数据库的读取 缓存结合数据库的写入      

show processlist 执行状态分析

Sleep状态 通常代表资源未释放,如果是通过连接池,sleep状态应该恒定在一定数量范围内 实战范例:因前端数据输出时(特别是输出到用户终端)未及时关闭数据库连接,导致因网络连接速度产生大量sleep连接,在网速出现异常时,数据库too many connections挂死. 简单解读,数据查询和执行通常只需要不到0.01秒,而网络输出通常需要1秒左右甚至更长,原本数据连接在0.01秒即可释放,但是因为前端程序未执行close操作,直接输出结果,那么在结果未展现在用户桌面前,该数据库连接一直维

exynos 4412 电源管理芯片PMIC 的配置及使用方法

/** ****************************************************************************** * @author ? ?Maoxiao Hu * @version ? V1.0.0 * @date ? ? ? Feb-2015 ****************************************************************************** * < COPYRIGHT 2015 IS

LightOJ - 1079 概率dp

题意:n个银行,每个有价值和被抓概率,要求找被抓概率不超过p的最大价值 题解:dp[i][j]表示前i个取j价值的所需最小概率,01背包处理,转移方程dp[i][j]=min(dp[i-1][j],dp[i-1][j-v[i]]+(1-dp[i-1][j-v[i]])*p) #include<bits/stdc++.h> #define fi first #define se second #define mp make_pair #define pb push_back #define pi