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 相关文章推荐
tbody元素支持嵌套的注意方法
Mar 24 Javascript
Javascript & DHTML 实例编程(教程)基础知识
Jun 02 Javascript
javascript 贪吃蛇实现代码
Nov 22 Javascript
jQuery 学习 几种常用方法
Jun 11 Javascript
js 对象是否存在判断
Jul 15 Javascript
jquery实现每个数字上都带进度条的幻灯片
Feb 20 Javascript
Jquery插件之Fancybox丰富的弹出层效果附源码下载
Dec 02 Javascript
Javascript动画效果(3)
Oct 11 Javascript
vue代码分割的实现(codesplit)
Nov 13 Javascript
vue实现的双向数据绑定操作示例
Dec 04 Javascript
vue框架下部署上线后刷新报404问题的解决方案(推荐)
Apr 03 Javascript
vue通过接口直接下载java生成好的Excel表格案例
Oct 26 Javascript
基于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 基本语法格式
2009/12/15 PHP
解析:使用php mongodb扩展时 需要注意的事项
2013/06/18 PHP
thinkphp实现发送邮件密码找回功能实例
2014/12/01 PHP
Yii框架日志操作图文与实例详解
2019/09/09 PHP
PHP7 整型处理机制修改
2021/03/09 PHP
用JavaScript获取网页中的js、css、Flash等文件
2006/12/20 Javascript
在JavaScript中监听IME键盘输入事件
2011/05/29 Javascript
jquery复选框全选/取消示例
2013/12/30 Javascript
JavaScript静态类型检查工具FLOW简介
2015/01/06 Javascript
JavaScript对数字的判断与处理实例分析
2015/02/02 Javascript
jquery实现仿Flash的横向滑动菜单效果代码
2015/09/17 Javascript
JavaScript调用传递变量参数的相关问题及解决办法
2015/11/01 Javascript
理解javascript闭包
2015/12/15 Javascript
js实现的页面矩阵图形变换特效
2016/01/26 Javascript
jQuery 常用代码集锦(必看篇)
2016/05/16 Javascript
jquery选择器中的空格与大于号>、加号+与波浪号~的区别介绍
2016/06/24 Javascript
详解webpack-dev-server的简单使用
2018/04/02 Javascript
JavaScript实现图片放大镜效果
2019/06/27 Javascript
通过微信公众平台获取公众号文章的方法示例
2019/12/25 Javascript
[01:11:28]DOTA2-DPC中国联赛定级赛 RNG vs Phoenix BO3第一场 1月8日
2021/03/11 DOTA
Python实现求最大公约数及判断素数的方法
2015/05/26 Python
浅谈编码,解码,乱码的问题
2016/12/30 Python
Python使用pip安装pySerial串口通讯模块
2018/04/20 Python
mac安装pytorch及系统的numpy更新方法
2018/07/26 Python
图解Python中深浅copy(通俗易懂)
2020/09/03 Python
html5中地理位置定位api接口开发应用小结
2013/01/04 HTML / CSS
canvas绘制圆角头像的实现方法
2019/01/17 HTML / CSS
英国游戏机和游戏购物网站:365games.co.uk
2018/06/18 全球购物
捷克多品牌在线时尚商店:ANSWEAR.cz
2020/10/03 全球购物
语文教学感言
2014/02/06 职场文书
中专毕业生个人职业生涯规划
2014/02/19 职场文书
党员弘扬焦裕禄精神思想汇报
2014/09/10 职场文书
一份恶作剧的检讨书
2014/09/13 职场文书
《假如》教学反思
2016/02/17 职场文书
个人职业生涯规划之自我评估篇
2019/09/03 职场文书
62句有关感恩节文案(推荐收藏)
2019/11/28 职场文书