前端EXCEL插件智表ZCELL数据源功能详解
一、数据源功能介绍
前端EXCEL插件智表ZCELL提供了强大的数据源管理功能,使开发者能够灵活地在电子表格中集成和管理结构化数据。数据源功能主要分为两种类型:
卡片式数据源:适合展示和编辑单个数据记录
表格式数据源:适合处理表格形式的多行数据
二、核心API详解
1. 创建数据源 (CreatDataSource)
功能:初始化数据源对象,支持卡片式和表格式两种类型。
参数:
{
name: "数据源名称", //必填
type: 0, //0-卡片式,1-表格式
data: jsondata, //数据集
// 表格式特有参数
startrow: 22, //起始行索引(从0开始)
startcol: "G", //起始列索引(从A开始)
autoBindColumn: true //是否自动绑定列(可选)
}
示例代码:
// 创建卡片式数据源
var jsondata = { name: "哪吒", age: 15, address: "陈塘关" };
let option1 = {
name: "motong",
type: 0,
data: jsondata
};
let ds = sheet.CreatDataSource(option1);
// 创建表格式数据源
var persons = [];
for (let i = 0; i < 3; i++) {
let p = {
cn: (i + 1).toString().padStart(3, "0"),
book: "西游记",
auth: "吴承恩",
name: "徒弟" + (i + 1),
operate: ""
};
persons.push(p);
}
let option = {
name: "person",
type: 1,
data: persons,
startrow: 22,
startcol: "G"
};
let ds = sheet.CreatDataSource(option);
2. 设置映射关系 (Mapping)
功能:建立数据字段与表格单元格/列的对应关系。
参数:
卡片式:cname(单元格名), field(字段名)
表格式:colname(列名), field(字段名)
示例代码:
// 卡片式映射
ds.Mapping("D23", "name"); //单元格名必须大写
// 表格式映射
ds.Mapping("G", "cn"); //列名必须大写
3. 设置列样式 (SetColumnInfo)
功能:为表格式数据源的列设置样式,新增行时会自动应用这些样式。
参数:
colname: 列名
coloption: 列样式设置对象
cellType: 单元格类型
cellStyle: 单元格样式
cellBorder: 单元格边框
cellFormat: 单元格数值格式
示例代码:
ds.SetColumnInfo("G", {
cellStyle: colstyle1,
cellBorder: border1
});
4. 绑定数据源 (BindDataSource)
功能:将数据源对象与表页对象绑定。
示例代码:
sheet.BindDataSource(ds);
5. 获取数据源 (GetDataSource)
功能:通过名称获取已创建的数据源对象。
示例代码:
let ds1 = sheet.GetDataSource("motong");
三、数据操作功能
1. 新增数据行 (AddRow)
功能:为表格式数据源添加新行。
参数:
count: 新增行数
order: 新增顺序("asc"-尾部增加,"desc"-首行增加)
示例代码:
let ds1 = sheet.GetDataSource("person");
if (ds1 != null) {
ds1.AddRow(2, "asc"); //在尾部新增2行
}
2. 获取变更数据
ZCELL提供了多种获取变更数据的方法:
// 获取新增行
let drows = ds1.GetInsertRows();
// 获取变更行
let drows = ds1.GetChangRows();
// 获取删除行
let drows = ds1.GetDeleteRows();
// 获取变更单元格(卡片式)
let ccs = ds1.GetChangeCells();
3. 清空变更记录 (ClearChange)
功能:手工清空变更记录,标记为已提交状态。
示例代码:
let ds = sheet.GetDataSource("person");
if (ds != null) {
ds.ClearChange();
}
四、最佳实践
完整工作流程示例
// 1. 创建表格式数据源
var products = [
{ id: "001", name: "笔记本电脑", price: 5999, stock: 100 },
{ id: "002", name: "智能手机", price: 3999, stock: 150 }
];
let option = {
name: "product",
type: 1,
data: products,
startrow: 5,
startcol: "B"
};
let ds = sheet.CreatDataSource(option);
// 2. 设置列映射
ds.Mapping("B", "id");
ds.Mapping("C", "name");
ds.Mapping("D", "price");
ds.Mapping("E", "stock");
// 3. 设置列样式
let priceStyle = {
cellFormat: "¥#,##0.00",
cellStyle: { fontColor: "#FF0000", fontWeight: "bold" }
};
ds.SetColumnInfo("D", priceStyle);
// 4. 绑定数据源
sheet.BindDataSource(ds);
// 5. 添加新行
ds.AddRow(1, "asc");
// 6. 获取变更(通常在保存时调用)
let newRows = ds.GetInsertRows();
let changedRows = ds.GetChangRows();
// 7. 清空变更记录
ds.ClearChange();
五、注意事项
单元格和列名在映射时必须使用大写字母。
表格式数据源必须指定startrow和startcol参数。
新增行时会自动继承列样式设置。
变更记录只在调用ClearChange前有效。
一个表页可以绑定多个数据源。
通过本教程,您应该已经掌握了ZCELL插件数据源功能的核心使用方法。这些功能可以大大简化电子表格中的数据管理任务,特别适合需要将结构化数据与电子表格结合的应用场景。
前端EXCEL插件智表ZCELL数据源功能详解的更多相关文章
- 免费了 -- EXCEL插件 智表ZCELL 普及版V1.0 发布了!!!
智表(zcell)是一款浏览器仿excel表格jquery插件.智表可以为你提供excel般的智能体验,支持双击编辑.设置公式.设置显示小数精度.下拉框.自定义单元格.复制粘贴.不连续选定.合并单元格 ...
- 浏览器仿EXCEL表格插件 - 智表ZCELL产品V1.4发布
智表(zcell)是一款浏览器仿excel表格jquery插件.智表可以为你提供excel般的智能体验,支持双击编辑.设置公式.设置显示小数精度.下拉框.自定义单元格.复制粘贴.不连续选定.合并单元格 ...
- 浏览器端类EXCEL表格插件 - 智表ZCELL产品V1.0.0.1版本发布
智表的优势 智表兼容与依赖 ZCELL 基于jQuery V1.11.3版本研发,兼容性依赖于jQuery自身的兼容性. 经过验证,目前IE.火狐.谷歌.360等主流浏览器均可以正常使用. 智表下载 ...
- Laravel 5使用Laravel Excel实现Excel/CSV文件导入导出的功能详解
1.简介 本文主要给大家介绍了关于Laravel 5用Laravel Excel实现Excel/CSV文件导入导出的相关内容,下面话不多说了,来一起看看详细的介绍吧. Laravel Excel 在 ...
- 我为什么要花大力气从头研发智表ZCELL(一个仿EXCEL的前端插件)
为什么呢,一个前端用的,类似EXCEL的操作的JS 插件,从头研发真的有必要吗?可能你会觉得没有必要吧,其实我自己也问过自己好多遍.因为业界有更加强大的spreadjs,也有比较轻型的JEXCEL,自 ...
- .NET ORM框架 SqlSuagr4.0 功能详解与实践【开源】
SqlSugar 4.0 ORM框架的优势 为了未来能够更好的支持多库分布式的存储,并行计算等功能,将SqlSugar3.x全部重写,现有的架构可以轻松扩展多库. 源码下载: https://gith ...
- Bayboy功能详解
Bayboy功能详解 一.Badboy中的检查点 1.1以sogou.com搜索为例,搜索测试 步骤:打开Badboy工具,在地址栏中输入搜狗网址:输入 测试 进行搜索:点击红色按钮停止录制 1.2添 ...
- 【转载】salesforce 零基础开发入门学习(四)多表关联下的SOQL以及表字段Data type详解
salesforce 零基础开发入门学习(四)多表关联下的SOQL以及表字段Data type详解 建立好的数据表在数据库中查看有很多方式,本人目前采用以下两种方式查看数据表. 1.采用schem ...
- MySQL的用户密码过期功能详解
MySQL的用户密码过期功能详解 作者:chszs,未经博主允许不得转载.经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs 先说明两个术语. Payment Ca ...
- SNS社交系统“ThinkSNS V4.6”活动应用功能详解及应用场景举例
sns社交系统ThinkSNS目前拥有功能:朋友圈(微博).微吧(论坛).频道.积分商城.IM即时聊天.直播.问答.活动.资讯(CMS).商城.广场.找人.搜索.评论.点赞.转发.分享.话题.积分.充 ...
随机推荐
- php用token做登录认证
https://blog.csdn.net/qq_20869933/article/details/133201967 作用: PHP 使用token验证可有效的防止非法来源数据提交访问,增加数据操作 ...
- 一次客户演讲PPT 反思
一 演讲ppt正常 制作流程: 编写演讲纲 与客户确认 确认通过后编写演讲稿 制作PPT 二 过程反思点 写纲前 与客户对接,了解需求及想法,最好音频记录 任务紧张程度.重要性想办法理清楚(领导跟踪情 ...
- QTableView实现在表格内直接对数据库内容进行修改、新增和删除等操作
文章目录 前言 QSqlTableModel 新增 删除 修改 提交 取消 前言 本文主要利用QSqlTableModel+QTableView来实现直接在QTableView中进行对数据库数据的操作 ...
- STM32 学习方法
前言 学习知识要掌握有效的学习方法,学习技术也是一样,本篇分享关于我学习 STM32 后总结的学习方法. 推荐的学习方法 系统学习 在网上购买一款开发板,使用开发板+开发板配套视频教程+开发板配套源码 ...
- SecureCRT配置跳板机
跳板机(Jump Server),也称堡垒机,是一类可作为跳板批量操作远程设备的网络设备,是运系统管理员或运维人员常用的操作平台之一. 大家知道,在日常的开发中,有可能我们的本机不能够直接连线上的服务 ...
- AI 代理的未来是事件驱动的
AI 代理即将彻底改变企业运营,它们具备自主解决问题的能力.适应性工作流以及可扩展性.但真正的挑战并不是构建更好的模型. 代理需要访问数据.工具,并且能够在不同系统之间共享信息,其输出还需要能被多个服 ...
- 认识webRTC
什么是 WebRTC 2010 年 5 月,谷歌收购了 Global IP Solutions(简称 GIPS),这是一家专注于 VoIP 和视频会议软件的公司,已开发出 RTC 所需的多项关键组件, ...
- study python3【3】前人高度总结出来的不仅仅Pathon的语言习方法
这是前人写的学习python的经验体会.不单单python,all语言都是如此. 转自https://www.cnblogs.com/nokiaguy/p/9557996.html 感谢分享 下面正文 ...
- DevOps工程师技能
技术背景 DevOps工程师必须持有计算机科学.工程或其他相关领域的学位.2年以上工作经验.这包括开发人员.系统管理员或devops驱动的团队成员的工作.这是一个重要的需求,同时也是对所有IT操作的理 ...
- Jenkins持续集成 docker、gitlab、sonar
Jenkins是一个功能强大的应用程序,允许持续集成和持续交付项目,无论用的是什么平台.这是一个免费的源代码,可以处理任何类型的构建或持续集成.集成Jenkins可以用于一些测试和部署技术.Jenki ...