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 相关文章推荐
下拉框select的绑定示例
Sep 04 Javascript
JS实现随机乱撞彩色圆球特效的方法
May 05 Javascript
JavaScript基本的输出和嵌入式写法教程
Oct 20 Javascript
全面解析Bootstrap排版使用方法(标题)
Nov 30 Javascript
Angularjs 自定义服务的三种方式(推荐)
Aug 02 Javascript
关于jQuery库冲突的完美解决办法
May 20 jQuery
基于Bootstrap的标签页组件及bootstrap-tab使用说明
Jul 25 Javascript
微信开发之企业付款到银行卡接口开发的示例代码
Sep 18 Javascript
js实现图片3D轮播效果
Sep 21 Javascript
在node环境下parse Smarty模板的使用示例代码
Nov 15 Javascript
vue移动端使用appClound拉起支付宝支付的实现方法
Nov 21 Javascript
jQuery实现鼠标滑动切换图片
May 27 jQuery
基于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
Zend Studio for Eclipse的java.lang.NullPointerException错误的解决方法
2008/12/06 PHP
php实现首页链接查询 友情链接检查的代码
2010/01/05 PHP
Aliyun Linux 编译安装 php7.3 tengine2.3.2 mysql8.0 redis5的过程详解
2020/10/20 PHP
JQuery 简便实现页面元素数据验证功能
2007/03/24 Javascript
发布BlueShow v1.0 图片浏览器(类似lightbox)blueshow.js 打包下载
2007/07/21 Javascript
javascript 跳转代码集合
2009/12/03 Javascript
JavaScript学习笔记(十)
2010/01/17 Javascript
jquery图片放大功能简单实现
2013/08/01 Javascript
js 动态修改css文件用到了cssRule
2014/08/20 Javascript
js实现文本框选中的方法
2015/05/26 Javascript
JS JSOP跨域请求实例详解
2016/07/04 Javascript
AngularJS ng-repeat数组有重复值的解决方法
2016/10/23 Javascript
Nodejs下DNS缓存问题浅析
2016/11/16 NodeJs
解决ajax不能访问本地文件问题(利用js跨域原理)
2017/01/24 Javascript
微信小程序 chooseImage选择图片或者拍照
2017/04/07 Javascript
layui获取多选框中的值方法
2018/08/15 Javascript
vue项目使用微信公众号支付总结及遇到的坑
2018/10/23 Javascript
详解vue-video-player使用心得(兼容m3u8)
2019/08/23 Javascript
解决python写的windows服务不能启动的问题
2014/04/15 Python
Python图像处理之图片文字识别功能(OCR)
2019/07/30 Python
Python的互斥锁与信号量详解
2019/09/12 Python
Python解释器以及PyCharm的安装教程图文详解
2020/02/26 Python
使用wxpy实现自动发送微信消息功能
2020/02/28 Python
浅谈keras中的batch_dot,dot方法和TensorFlow的matmul
2020/06/18 Python
Pandas DataFrame求差集的示例代码
2020/12/13 Python
时尚的CSS3进度条效果
2012/02/22 HTML / CSS
如何查看浏览器对html5的支持情况
2020/12/15 HTML / CSS
教师专业自荐书范文
2014/02/10 职场文书
2014年开学第一课活动方案
2014/03/06 职场文书
通用自荐信范文
2014/03/14 职场文书
文化产业实施方案
2014/06/07 职场文书
湘江北去观后感
2015/06/15 职场文书
护理心得体会范文
2016/01/22 职场文书
Html5生成验证码的示例代码
2021/05/10 Javascript
52条SQL语句教你性能优化
2021/05/25 MySQL
JavaScript中的LHS和RHS分析详情
2022/04/06 Javascript