JavaScript中使用sencha gridpanel 编辑单元格、改变单元格颜色


Posted in Javascript onNovember 26, 2015

表格GridPanel概述

      ExtJS中的表格功能非常强大,包括了排序、缓存、拖动、隐藏某一列、自动显示行号、列汇总、单元格编辑等实用功能。

表格由类Ext.grid.GridPanel定义,继承自Panel,其xtype为grid。ExtJS中,表格Grid必须包含列定义信息,并指定表格的数据存储器Store。表格的列信息由类Ext.grid.Column(以前是由Ext.grid.ColumnModel定义)、而表格的数据存储器由Ext.data.Store定义,数据存储器根据解析的数据不同分为JsonStore、SimpleStroe、GroupingStore等。

下面通过一段代码给大家介绍sencha gridpanel 编辑单元,具体代码如下所示:

{
xtype: 'gridpanel',
region: 'north',
height: 150,
title: 'My Grid Panel',
store: 'A_Test_Store',
columns: [
{
xtype: 'gridcolumn',
dataIndex: 'Name',
text: 'Name',
editor: {
xtype: 'textfield'
}
},
{
xtype: 'gridcolumn',
dataIndex: 'Content',
text: 'Content'
},
{
xtype: 'gridcolumn',
dataIndex: 'Time',
text: 'Time'
}
],
plugins: [
Ext.create('Ext.grid.plugin.CellEditing', {
clicksToEdit: 1, //点击单元格编辑
listeners: {
beforeedit: {
fn: me.onCellEditingBeforeEdit,
scope: me
},
validateedit: {
fn: me.onCellEditingValidateedit,
scope: me
}
}
})
]
}
onCellEditingBeforeEdit: function(editor, e, eOpts) {//动态赋值用.正常情况下不需要该事件.
   e.record.data[e.field]= "my test";
e.value="my test";
e.record.commit(); //提交,不提交无效
}
onCellEditingValidateedit: function(editor, e, eOpts) {
if(e.row==1) //验证逻辑
{
e.cancel=true; //取消
e.record.data[e.field] = e.value;
}
e.record.commit();
}

下面一段代码是关于sencha gridpanel改变单元格颜色

标题列包含 审核通过则绿色,包含拒绝为红色:

{
xtype: 'gridcolumn',
renderer: function(value, metaData, record, rowIndex, colIndex, store, view) {
metaData.tdAttr = 'data-qtip="'+record.data.Content+'"';

if(record.data.Content.indexOf('审核通过')!=-1)
{
metaData.style="color:green";
}
else if(record.data.Content.indexOf('拒绝')!=-1)
{
metaData.style="color:red";
}
return value;
}
,
width: '*',
dataIndex: 'Title',
text: '标题'
}

Javascript 相关文章推荐
IE6 弹出Iframe层中的文本框“经常”无法获得输入焦点
Dec 27 Javascript
兼容IE和Firefox的javascript获取iframe文档内容的函数
Aug 15 Javascript
实现checkbox全选、反选、取消JavaScript小脚本异常
Apr 10 Javascript
jquery中的ajax方法怎样通过JSONP进行远程调用
May 04 Javascript
jquery取子节点及当前节点属性值的方法
Sep 09 Javascript
javascript实现的字符串与十六进制表示字符串相互转换方法
Jul 17 Javascript
JS未跨域操作iframe里的DOM
Jun 01 Javascript
基于javascript实现最简单选项卡切换
Feb 01 Javascript
javascript算法之二叉搜索树的示例代码
Sep 12 Javascript
Javascript实现鼠标点击冒泡特效
Dec 24 Javascript
vue中js判断长时间不操作界面自动退出登录(推荐)
Jan 22 Javascript
关于Vue Router的10条高级技巧总结
May 06 Vue.js
基于jquery实现全屏滚动效果
Nov 26 #Javascript
javascript给span标签赋值的方法
Nov 26 #Javascript
谈谈javascript中使用连等赋值操作带来的问题
Nov 26 #Javascript
jQuery实现的AJAX简单弹出层效果代码
Nov 26 #Javascript
js检测iframe是否加载完成的方法
Nov 26 #Javascript
学习JavaScript设计模式(策略模式)
Nov 26 #Javascript
深入浅析同源策略和跨域访问
Nov 26 #Javascript
You might like
基于php中使用excel的简单介绍
2013/08/02 PHP
Yii模型操作之criteria查找数据库的方法
2016/07/15 PHP
Thinkphp实现短信验证注册功能
2016/10/18 PHP
php 运算符与表达式详细介绍
2016/11/30 PHP
javascript随机之洗牌算法深入分析
2014/06/07 Javascript
jquery制作select列表双向选择示例代码
2014/09/02 Javascript
jQuery实现在最后一个元素之前插入新元素的方法
2015/07/18 Javascript
JS使用eval解析JSON的注意事项分析
2015/11/14 Javascript
详解基于angular-cli配置代理解决跨域请求问题
2017/07/05 Javascript
浅谈mint-ui 填坑之路
2017/11/06 Javascript
vue车牌号校验和银行校验实战
2019/01/23 Javascript
vue.js高德地图实现热点图代码实例
2019/04/18 Javascript
javascript实现文字跑马灯效果
2020/06/18 Javascript
node.js如何操作MySQL数据库
2020/10/29 Javascript
小程序组件传值和引入sass的方法(使用vant Weapp组件库)
2020/11/24 Javascript
Python和GO语言实现的消息摘要算法示例
2015/03/10 Python
使用Python中的tkinter模块作图的方法
2017/02/07 Python
Python处理XML格式数据的方法详解
2017/03/21 Python
Python使用剪切板的方法
2017/06/06 Python
python使用for循环计算0-100的整数的和方法
2019/02/01 Python
Python神奇的内置函数locals的实例讲解
2019/02/22 Python
Python增强赋值和共享引用注意事项小结
2019/05/28 Python
基于python实现蓝牙通信代码实例
2019/11/19 Python
简单了解python字符串前面加r,u的含义
2019/12/26 Python
浅谈HTML5新增和废弃的标签
2019/04/28 HTML / CSS
美国成衣女装品牌:CHICO’S
2016/09/19 全球购物
财务会计专业个人求职信范本
2014/01/08 职场文书
班队活动设计方案
2014/01/30 职场文书
员工薪酬激励方案
2014/06/13 职场文书
光学与应用专业毕业生求职信
2014/09/01 职场文书
公司老总年会致辞
2015/07/30 职场文书
幼儿园科学课教学反思
2016/03/03 职场文书
珍惜时间的诗歌赏析
2019/08/23 职场文书
导游词之天津盘山
2019/11/01 职场文书
阿里云Nginx配置https实现域名访问项目(图文教程)
2021/03/31 Servers
go语言map与string的相互转换的实现
2021/04/07 Golang