Extjs 点击复选框在表格中增加相关信息行


Posted in Javascript onJuly 12, 2016

功能效果:点击复选框在表格中自动增加相关信息行,复选框取消则表格中内容自动删除

Extjs 点击复选框在表格中增加相关信息行

初始效果大概是这样~~~~~

// 定义初始 存放表格数据
var gridItems = [];
//省份复选框
var $provinceCheckbox01 = new Ext.form.CheckboxGroup({
xtype: 'checkboxgroup',
fieldLabel: '省份选择',
labelWidth: 60,
columns: 9,
vertical: true,
margin: '10 0 0 15',
defaults: {
labelWidth: 80,
width: 60,
labelAlign: "left"
},
items: provinceItems, //provinceItems是从其他渠道获取的数据
listeners: {
change: OnChange // 复选框改变事件
}
});
//表格初始数据模型
var gridPanelStore = new Ext.data.Store({
fields: ['discount', 'provinceId', 'provinceName'],
data: {'items': ''},
proxy: {
type: 'memory',
reader: {
type: 'json',
root: 'items'
}
}
});
// grid
var $grid = new Ext.grid.Panel({
store: gridPanelStore,
selType: 'rowmodel',
singleSelect: true,
margin: '20 0 0 0',
columns: [{
xtype: 'rownumberer',
header: '序号',
width: 70,
align: 'center'
}, {
header: '省份',
width: 150,
sortable: true,
menuDisabled: true,
align: 'center',
dataIndex: 'provinceName'
}, {
header: '折扣',
width: 100,
menuDisabled: true,
sortable: true,
align: 'center',
dataIndex: 'discount',
editor: {
allowBlank: false
}
}],
dockedItems: [{
xtype: "pagingtoolbar",
dock: "bottom",
displayInfo: true
}],
plugins: [cellEditing]
});
//事件监听
function OnChange(newValue, oldValue, eOpts) {
// 清空数据
gridItems = [];
//选中省份ID
var checkedId = this.getValue().xxx;
//判断选中数量
if(checkedId==undefined){
gridItems = [];
} else if (checkedId.length == undefined) {
for (var i = 0; i < provinceItems.length; i++) {
if (provinceItems[i].inputValue == checkedId) {
gridItems[0] = {
"provinceId": checkedId,
"provinceName": provinceItems[i].boxLabel,
"discount": "1"
};
}
}
}else if(checkedId.length !== undefined){
for(var j = 0;j<checkedId.length;j++){
for (var o = 0; o < provinceItems.length; o++) {
if (provinceItems[o].inputValue == checkedId[j]) {
gridItems[j] = {
"provinceId": checkedId[j],
"provinceName": provinceItems[o].boxLabel,
"discount": "1"
};
}
}
}
}
//console.log($gridItems);
$grid.store.loadData($gridItems, false);
}

类似的这种功能实际用到的可能不是很多。

做这个功能的时候,点击复选框之后获取到的数据一直放不到grid中。

最开始是想把取到的值,直接赋给 gridPanelStore.data.items ,但是赋值之后 用 store.reload() 刷新表格数据总是报错,说是方法错了。

我觉得(不一定对啊~),可能是因为我的数据模型里面套了太多层,导致直接从grid的store reload()才回报错的。

最后查找API,才发现了loadData 可以直接给数据传值。

Extjs 点击复选框在表格中增加相关信息行

我用的是Boolean值是 false。

以上所述是小编给大家介绍的Extjs 点击复选框在表格中增加相关信息行,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JavaScript的递归之递归与循环示例介绍
Aug 05 Javascript
如何从jQuery的ajax请求中删除X-Requested-With
Dec 11 Javascript
JQuery 图片滚动轮播示例代码
Mar 24 Javascript
javascript实现的猜数小游戏完整实例代码
May 10 Javascript
手机端 HTML5使用photoswipe.js仿微信朋友圈图片放大效果
Aug 25 Javascript
jQuery动态移除和添加背景图片的方法详解
Mar 07 Javascript
解决Node.js使用MySQL出现connect ECONNREFUSED 127.0.0.1:3306的问题
Mar 09 Javascript
基于BootStrap的前端分页带省略号和上下页效果
May 18 Javascript
详解Vue-cli代理解决跨域问题
Sep 27 Javascript
pace.js和NProgress.js两个加载进度插件的一点小总结
Jan 31 Javascript
vue实现裁切图片同时实现放大、缩小、旋转功能
Mar 02 Javascript
浅谈Vue3.0之前你必须知道的TypeScript实战技巧
Sep 11 Javascript
jQuery插件学习教程之SlidesJs轮播+Validation验证
Jul 12 #Javascript
JavaScript中的事件委托及好处
Jul 12 #Javascript
原生js实现class的添加和删除简单代码
Jul 12 #Javascript
JavaScript动态添加事件之事件委托
Jul 12 #Javascript
html+js实现简单的计算器代码(加减乘除)
Jul 12 #Javascript
Javascript iframe交互并兼容各种浏览器的解决方法
Jul 12 #Javascript
javascript加减乘除的简单实例
Jul 12 #Javascript
You might like
简单的移动设备检测PHP脚本代码
2011/02/19 PHP
thinkphp模板继承实例简述
2014/11/26 PHP
php注册登录系统简化版
2020/12/28 PHP
TP(thinkPHP)框架多层控制器和多级控制器的使用示例
2018/06/13 PHP
Yii2语言国际化的配置教程
2018/08/19 PHP
jquery的ajax和getJson跨域获取json数据的实现方法
2014/02/04 Javascript
JavaScript字符串对象slice方法入门实例(用于字符串截取)
2014/10/16 Javascript
详解Javacript和AngularJS中的Promises
2016/02/09 Javascript
JS DOM实现鼠标滑动图片效果
2020/09/17 Javascript
JavaScript之filter_动力节点Java学院整理
2017/06/28 Javascript
react配合antd组件实现的管理系统示例代码
2018/04/24 Javascript
Node.js fs模块(文件模块)创建、删除目录(文件)读取写入文件流的方法
2019/09/03 Javascript
vue自定义树状结构图的实现方法
2020/10/18 Javascript
NestJs使用Mongoose对MongoDB操作的方法
2021/02/22 Javascript
[01:15:18]2014 DOTA2国际邀请赛中国区预选赛 LGD VS Speed Gaming.cn
2014/05/22 DOTA
详细解读Python的web.py框架下的application.py模块
2015/05/02 Python
python使用range函数计算一组数和的方法
2015/05/07 Python
Python的Django中将文件上传至七牛云存储的代码分享
2016/06/03 Python
Python 文件操作的详解及实例
2017/09/18 Python
Python数据结构之顺序表的实现代码示例
2017/11/15 Python
对python当中不在本路径的py文件的引用详解
2018/12/15 Python
对python中assert、isinstance的用法详解
2019/11/27 Python
解决pyshp UnicodeDecodeError的问题
2019/12/06 Python
pytorch中的transforms模块实例详解
2019/12/31 Python
python logging模块的使用详解
2020/10/23 Python
实例讲解CSS3中的border-radius属性
2015/08/18 HTML / CSS
HTML5 canvas画图并保存成图片的jcanvas插件
2014/01/17 HTML / CSS
英国领先的狗和宠物美容专家:Christies Direct
2017/04/03 全球购物
企事业单位求职者的自我评价
2013/12/28 职场文书
国际商务专业毕业生自我鉴定2014
2014/09/27 职场文书
大学生暑期社会实践证明范本
2014/10/24 职场文书
服装区域经理岗位职责
2015/04/10 职场文书
员工手册编写范本
2015/05/14 职场文书
2016年国庆节假期旅游工作总结
2016/04/01 职场文书
2016年“11.11”光棍节活动总结
2016/04/05 职场文书
Mysql 8.x 创建用户以及授予权限的操作记录
2022/04/18 MySQL