前端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).商城.广场.找人.搜索.评论.点赞.转发.分享.话题.积分.充 ...
随机推荐
- 支付宝 IoT 设备入门宝典(下)设备经营篇
上篇介绍了支付宝 IoT 设备管理,但除了这些基础功能外,商户还可以利用设备进行一些运营动作,让设备更好的帮助自己,本篇就会以设备经营为中心,介绍常见的设备相关能力和问题解决方案.如果对上篇感兴趣,可 ...
- php获取详细访客信息,获取访客IP,IP归属地,访问时间,操作系统,浏览器,移动端/PC端,环境语言,访问URL等信息
问题描述:需要获取访客访问网站信息 1.代码示例与说明: <?php header("Content-Type: text/html; charset=utf-8"); ...
- opencv实现像素统计的示例代码
在 OpenCV 中,统计图像的像素信息(如像素值分布.最大值.最小值.均值等)是常见的操作.以下是一些常用的方法和函数,用于统计图像的像素信息: 统计像素值的基本信息 最大值.最小值.均值.标准差: ...
- js 时间转时间戳
前言 有时候我们用时间插件,选择好时间后,需要把日期格式转化为时间戳,再传到后台 时间转时间戳 let time = Math.floor(new Date("2014-04-23 18:5 ...
- Git工作流介绍
前言 工作流其实不是一个初级主题,背后的本质问题其实是有效的项目流程管理和高效的开发协同约定,不仅是Git或SVN等SCM工具的使用. 集中式工作流 如果你的开发团队成员已经很熟悉Subversion ...
- 使用ssh连接virtual Box里的虚拟机
使用ssh连接virtual Box里的虚拟机 需求:virtual Box提供的文件拖放功能在从虚拟机拖向主机时,会出现一些卡顿,因此考虑使用ssh代替其文件传输功能. 高级 -> 端口转发 ...
- 【Linux】2.3 Linux目录结构
基本介绍 linux 的文件系统是采用级层式的树状目录结构,在此结构中的最上层是根目录"/",然后在此目录下再创建其他的目录. 深刻理解 linux 树状文件目录是非常重要的,这里 ...
- 【Linux】U-Boot 加载并启动 Linux 系统程序
U-Boot 加载并启动 Linux 系统程序 零.介绍 最近在玩一些嵌入式的开发板,在引导操作系统时需要用到U-Boot,故此研究一下. U-Boot(Universal Bootloader)是一 ...
- Windows 系统授权服务信息
cmd 中输入命令 slmgr.vbs /dlv 后查看输出信息 据说,OEM和RETAIL可以正常升级到Windows10,并永久激活
- Windows Terminal 添加 git-bash
配置文件中 profiles 节点补充配置 { "guid": "{b453ae62-4e3d-5e58-b989-0a998ec441b7}", " ...