API 概览
构造函数
const spreadsheet = new dhx.Spreadsheet("spreadsheet_container", {
rowsCount: 20,
colsCount: 20
});
参数:
- 一个 HTML 容器(或 HTML 容器的 ID)
- 一个配置选项的哈希对象(见下文)
Spreadsheet 方法
| 名称 | 描述 |
|---|---|
| addColumn() | 向电子表格中添加新列 |
| addFormula() | 注册可在单元格公式中使用的自定义公式函数 |
| addRow() | 向电子表格中添加新行 |
| clear() | 清空电子表格 |
| deleteColumn() | 从电子表格中删除一列 |
| deleteRow() | 从电子表格中删除一行 |
| eachCell() | 遍历电子表格中的单元格 |
| endEdit() | 结束对选定单元格的编辑,关闭编辑器并保存输入的值 |
| fitColumn() | 将列宽调整为与其最长值匹配 |
| freezeCols() | 固定("冻结")列 |
| freezeRows() | 固定("冻结")行 |
| getFilter() | 返回包含数据筛选条件的对象 |
| getFormat() | 返回应用于单元格值的数字格式 |
| getFormula() | 返回单元格的公式 |
| getStyle() | 返回应用于单元格的样式 |
| getValue() | 返回单元格的值 |
| hideCols() | 隐藏列 |
| hideRows() | 隐藏行 |
| hideSearch() | 隐藏搜索栏 |
| insertLink() | 在单元格中插入或移除超链接 |
| isLocked() | 检查单元格是否被锁定 |
| load() | 从外部文件加载数据 |
| lock() | 锁定指定的单元格 |
| mergeCells() | 将一组单元格合并为一个,或拆分已合并的单元格 |
| parse() | 从本地数据源向电子表格中加载数据 |
| redo() | 重新执行已撤销的操作 |
| serialize() | 将电子表格数据序列化为 JSON 对象 |
| search() | 根据指定参数搜索单元格 |
| setFilter() | 按指定条件筛选电子表格中的数据 |
| setFormat() | 为单元格的值设置指定格式 |
| setStyle() | 为单元格设置样式 |
| setValidation() | 通过向单元格添加下拉列表来为单元格设置验证 |
| setValue() | 为单元格设置值 |
| showCols() | 显示隐藏的列 |
| showRows() | 显示隐藏的行 |
| startEdit() | 开始编辑选中的单元格 |
| undo() | 撤销最近一次操作 |
| unfreezeCols() | 取消固定("冻结")的列 |
| unfreezeRows() | 取消固定("冻结")的行 |
| unlock() | 解锁已锁定的单元格 |
Spreadsheet 事件
| 名称 | 描述 |
|---|---|
| afterAction | 在操作执行完成后触发 |
| afterClear | 在电子表格被清空后触发 |
| afterDataLoaded | 在数据加载完成后触发 |
| afterEditEnd | 在单元格编辑结束后触发 |
| afterEditStart | 在单元格编辑开始后触发 |
| afterFocusSet | 在单元格获得焦点后触发 |
| afterSelectionSet | 在单元格被选中后触发 |
| afterSheetChange | 在当前活动工作表切换后触发 |
| beforeAction | 在操作执行之前触发 |
| beforeClear | 在电子表格被清空之前触发 |
| beforeEditEnd | 在单元格编辑结束之前触发 |
| beforeEditStart | 在单元格开始编辑之前触发 |
| beforeFocusSet | 在单元格获得焦点之前触发 |
| beforeSelectionSet | 在选中单元格之前触发 |
| beforeSheetChange | 在切换当前活动工作表之前触发 |
Spreadsheet 属性
| 名称 | 描述 |
|---|---|
| colsCount | 可选。设置电子表格初始化时的列数 |
| editLine | 可选。显示/隐藏编辑栏 |
| exportModulePath | 可选。设置导出模块的路径 |
| formats | 可选。定义数字格式列表 |
| importModulePath | 可选。设置导入模块的路径 |
| localization | 可选。定义数字、日期、时间和货币的格式 |
| menu | 可选。显示/隐藏菜单栏 |
| multiSheets | 可选。启用/禁用在电子表格中使用多个工作表的功能 |
| readonly | 可选。启用/禁用只读模式 |
| rowsCount | 可选。设置电子表格初始化时的行数 |
| toolbarBlocks | 可选。指定电子表格工具栏中显示的按钮分组 |
Sheet Manager 方法
| 名称 | 描述 |
|---|---|
| add() | 向电子表格中添加一个新的空工作表,并返回新建工作表的唯一标识符 |
| clear() | 清除指定工作表的内容(删除所有单元格值、样式和格式),但不删除工作表本身 |
| get() | 根据标识符返回单个工作表对象 |
| getActive() | 返回当前在电子表格中处于活动状态(可见)的工作表对象 |
| getAll() | 返回电子表格中当前所有 工作表对象组成的数组 |
| remove() | 根据标识符从电子表格中移除工作表 |
| setActive() | 将活动(可见)工作表切换为指定标识符对应的工作表 |
Selection 方法
| 名称 | 描述 |
|---|---|
| getFocusedCell() | 返回当前焦点单元格的 id |
| getSelectedCell() | 返回选中单元格的 id(可为多个) |
| removeSelectedCell() | 取消指定单元格的选中状态 |
| setFocusedCell() | 将焦点设置到指定单元格 |
| setSelectedCell() | 选中指定单元格(可为多个) |
Events Bus 方法
| 名称 | 描述 |
|---|---|
| detach() | 从事件中移除一个处理器(该处理器之前通过 on() 方法附加) |
| fire() | 触发一个内部事件 |
| on() | 为 Spreadsheet 的内部事件附加一个处理器 |
导出方法
| 名称 | 描述 |
|---|---|
| json() | 将电子表格中的数据导出为 JSON 文件 |
| xlsx() | 将电子表格中的数据导出为 Excel (.xlsx) 文件 |