Ext 行统计有意思的实现.(js对象的循环, ext列的设置)
考勤界面, 列包含日期. 行的数据格式: 需要实现 编辑一列然后在最后产生的统计的效果.
行数据内容.

Gird Load 的时候统计数据:
-- 根据对象. 可以Ext.Date.parse 成功的都是日期列. 其他非日期列则不会执行统计.
function AttenAllStaticsCalc() {
for (var i = 0; i < AttendanceTable.store.data.items.length; i++) {
var record = AttendanceTable.store.data.items[i];
var recordData = record.data;
var staticQty = {};
for (var k in recordData) {
var tm = Ext.Date.parse(k, 'Ymd')
var recordDatas = recordData[k];
if (tm) {
if (recordData[k]) {
if (staticQty[recordData[k]] != undefined) {
staticQty[recordData[k]] += 1;
} else {
staticQty[recordData[k]] = 1;
}
}
}
}
var res = "";
if (staticQty) {
for (var t in staticQty) {
if (staticQty[t]) {
var si = t + ": " + staticQty[t] + "; ";
res += si;
}
}
}
if (res.length > 0) {
res = res.substring(0, res.length - 2);
}
recordData['AttenStatics'] = res;
//record.set("AttenStatics", res); //显示数据
}
AttendanceTable.view.refresh();
}
每行编辑后设置统计数字;
var staticQty = {};
for (var k in recordData) {
var tm = Ext.Date.parse(k, 'Ymd')
var recordDatas = recordData[k];
if (tm) {
if (recordData[k]) {
if (staticQty[recordData[k]] != undefined) {
staticQty[recordData[k]] += 1;
} else {
staticQty[recordData[k]] = 1;
}
}
}
}
//oldValue, newValue -1 + 1动作
staticQty[oldValue] = staticQty[oldValue] - 1;
staticQty[newValue] = typeof(staticQty[newValue]) == 'undefined' ? 1 : staticQty[newValue] + 1;
var res = "";
if (staticQty) {
for (var t in staticQty) {
if (staticQty[t]) {
var si = t + ": " + staticQty[t] + "; ";
res += si;
}
}
}
if (res.length > 0) {
res = res.substring(0, res.length - 2);
}
record.set("AttenStatics", res); //显示数据
使用
Ext 行统计有意思的实现.(js对象的循环, ext列的设置)的更多相关文章
- EXT心得--并非所有的items配置对象都属于EXT的内置类
之前我对EXT的items中未指明xtype的配置对象有一个错误的认识--即虽然某个items未指明它下面的某个组件的xtype,但这个组件肯定属性EXT的某个类.然而今天在查看actioncolum ...
- js 对象的循环
var car = {type:"Fiat", model:500, color:"white"}; var arr = array(); for(i in c ...
- Ext JS学习第九天 Ext基础之 扩展原生的javascript对象
此文来记录学习笔记: •Ext对于原生的javascript对象进行了一系列的扩展,我们把他们掌握好,更能深刻的体会Ext的架构,从而对我们的web开发更好的服务, 源码位置,我们可以从开发包的这个位 ...
- Ext JS学习第十天 Ext基础之 扩展原生的javascript对象(二)
此文来记录学习笔记: 今天继续说Ext.Array,Ext.Function,Ext.Date,Ext.Error ------------------------------------------ ...
- Ext 行模型与Grid视图
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- JSON与js对象序列化
JavaScript对象表示法(JavaScript Object Notation,简称JSON)是一种轻量级的数据交换格式,它基于js字面量表示法,是js的一个子集.虽然是一个js的子集但是他与语 ...
- js 对象深复制,创建对象和继承
js 对象深复制,创建对象和继承.主要参考高级编程第三版,总结网上部分资料和自己的代码测试心得.每走一小步,就做一个小结. 1.对象/数组深复制 一般的=号传递的都是对象/数组的引用,如在控制台输入 ...
- 超实用的JavaScript代码段 Item8 -- js对象的(深)拷贝
js 对象 浅拷贝 和 深拷贝 1.浅拷贝 拷贝就是把父对像的属性,全部拷贝给子对象. 下面这个函数,就是在做拷贝: var Chinese = { nation:'中国' } var Doctor ...
- Ext JS学习第十二天 Ext基础之操作dom ; get与fly 方法
此文用来记录学习笔记 •嗯!首先,什么是DOM(Document Object Model) –W3C对DOM的定义:文档对象模型是一个平台,一个中立于语言的应用程序编程接口(API),允许程序访问并 ...
随机推荐
- mysql navcate longblob 查询结果导出倒入
由于之前项目为了查询方便,且不受权限控制.所以把image储存在了数据库.但是也遇到了很多瓶颈问题. 1,丢图从日志上查询获知,丢图95%以上是由于mysql的timeout时间失效引起的.(由于另一 ...
- 【Java】关于项目启动大请求量高负载时如何确保db等资源不出错的问题
如果一个项目启动时(单机), 瞬间来了1000个访问, 如何确保db等资源不会压垮呢? 现在想想我当时回答的并不好, 而现在看公司框架才发现其实有针对于这一块做过专门的优化的.下面就来分享下公司关 ...
- 获取Xcode工程所有的类名
有的时候在需求中需要获取工程中所有的类名.例如在获取工程中继承某个类的列表. 核心代码如下: unsigned ; const char **classes = nil; Dl_info info; ...
- Failed to load ApplicationContext ,Error creating bean with name 'adminUserService': Injection of autowired dependencies failed;
Druid配置的时候出现这个问题: "C:\Program Files\Java\jdk1.8.0_191\bin\java" -ea -Didea.test.cyclic.buf ...
- Golang微服务:Micro Trace使用opentracing jaeger
trace Micro通过Wrapper实现了三种trace接口,aswxray,opencensus,opentracing,这里主要关注opentracing,opentracing已成为行业标准 ...
- javaScript 深拷贝、浅拷贝
在 JS 中有一些基本类型像是Number.String.Boolean,而对象就是像这样的东西{ name: 'Larry', skill: 'Node.js' },对象跟基本类型最大的不同就在于他 ...
- Java中对Array数组的常用操作
目录: 声明数组: 初始化数组: 查看数组长度: 遍历数组: int数组转成string数组: 从array中创建arraylist: 数组中是否包含某一个值: 将数组转成set集合: 将数组转成li ...
- jmeter 测试MD5加密登录接口
1.点击options-funciton helper dialog,打开函数助手 在string to calculate MD5 hash 中填写密码,复制function sysntax中的值 ...
- css常用样式总结:
一.input和textarea修改placeholder的颜色: input::-webkit-input-placeholder { /* WebKit browsers */ color: #c ...
- NoSQL、memcached介绍、安装memcached、查看memcached状态
1.NoSQL 2.memcached介绍 3.安装memcached(二进制包安装) yum install -y memcached libmemcached libevent (若没有安 ...