彩票走势图

SpreadJS使用教程:表单保护典型问题合集

转帖|使用教程|编辑:莫成敏|2020-05-06 10:00:46.970|阅读 563 次

概述:SpreadJS 是一款基于 HTML5 的纯前端电子表格控件,兼容 450 种以上的 Excel 公式,具有“高性能、跨平台、与 Excel 高度兼容”等产品特性。本文整理了表单保护相关的典型问题。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:

SpreadJS 是一款基于 HTML5 的纯前端电子表格控件,兼容 450 种以上的 Excel 公式,具有“高性能、跨平台、与 Excel 高度兼容”等产品特性。在带来亲切的 Excel 使用体验的同时,满足 Web Excel 组件开发、表格文档协同编辑、数据填报、Excel 类报表设计等业务场景,极大降低了企业研发成本和项目交付风险。

点击下载SpreadJS正式版

表单保护一直都是Excel的一个常用功能,在SpreadJS中也是如此,用户经常通过设置表单保护来进行填报权限的控制。本文整理了表单保护相关的典型问题。

1、SpreadJS表单保护的机制:

表单保护的机制和Excel一样需要同时设定锁定(locked)和保护(Protect)两个状态为true,才能让单元格禁止编辑。

2、所有单元格都不能编辑

这里的locked属性默认所有的单元格的locked属性都是true,换而言之在默认状态下,只要将Protect的状态设置为true,就可以做到所有单元格都不能编辑。

否则则需要将所有的单元格locked属性设置为true后再设置表单保护。

3、设置默认单元格的锁定状态为false

var defaultStyle = sheet.getDefaultStyle();
defaultStyle.locked = false;
sheet.setDefaultStyle(defaultStyle);

4、复制取消保护单元格之后复制后的单元格为保护状态

表单保护的状态下是无法复制locked属性的,非表单保护状态下可以复制。

解决这个问题的办法是,在事件中copyto之前先将表单保护的状态设置为false,然后copyto结束后再设置为true

document.getElementById('btnCopy').addEventListener('click', function() {
            sheet.options.isProtected = false;
            sheet.copyTo(5, 4, 5, 7, 7, 1, spreadNS.CopyToOptions.all);
            sheet.options.isProtected = true;
});

5、sheet页密码保护相关

参考这篇文章

6、保护工作簿里面的几行

如果我们不希望单元格被编辑,只要给单元格设置一个locked 为true的style即可,如果整行都不希望被编辑,使用setStyle方法时第二个参数设置为-1,那么这一行都被locked了。整列则反之,第一个参数为-1

设置完之后再设置sheet.options.isProtected = true;

7、保护之后允许调整行款列高

sheet.options.protectionOptions.allowResizeRows = true;
sheet.options.protectionOptions.allowResizeColumns = true;

8、锁定的单元格不允许点击

sheet.options.protectionOptions.allowSelectLockedCells = false;

本文内容到这里就结束了,感兴趣的朋友可以下载SpreadJS试用版免费体验~

相关内容推荐:

SpreadJS 最新使用教程>>>


想要购买SpreadJS正版授权,或了解更多产品信息请点击



标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn

文章转载自:

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP