找回密码
 立即注册

QQ登录

只需一步,快速开始

Clark.Pan 讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-5-31 20:21  /   查看:3322  /  回复:0
背景:       超链接是一个非常常见的功能,用于进行跳转。SpreadJS当中有自己的超链接设置,可以支持超链接的正常功能,为跳转进行设置。但有一点美中不足的是该超链接无法导出Excel,在填报中经常会遇到设置一个跳转目录的需求,这样的需求往往还要支持导出Excel。这个时候原有的超链接就无法满足功能了。好消息是在SpreadJS的V13.1.0中支持了跟Excel可以互相导入导出的超链接。
设置方式:
       以前的超链接设置是给单元格设置一个HyperLink的cellType。之后通过text,linkToolTip,onClickAction等方法进行超链接的具体设置,例如:
  1. var h = new spreadNS.CellTypes.HyperLink();
  2. h.text("set sheet tab style");
  3. h.linkToolTip("set sheet tab style and sheet name");
  4. h.activeOnClick(true);
  5. h.onClickAction(function () {
  6.         //do something
  7.     spread.commandManager().execute({cmd: "setSheetTabStyle"});
  8. });
  9. sheet.setCellType(3, 2, h);
复制代码
      相关文档可以参考:
       https://demo.grapecity.com.cn/spreadjs/SpreadJSTutorial/features/cells/cell-types/hyperlink/purejs
       新的超链接的设置方式与旧版是不同的。新的超链接功能有专门的api来进行设置,通过setHyperLink来进行设置并且配置url,tooltip,linkColor等属性设置来进行具体设置,例如:

  1. sheet.setHyperlink(0, 2, {
  2.     url: 'https://www.grapecity.com/spreadjs',
  3.     tooltip: 'grapecity',
  4.     linkColor: '#0066cc',
  5.     visitedLinkColor: '#3399ff',
  6.     target: GC.Spread.Sheets.Hyperlink.HyperLinkTargetType.blank
  7. }, GC.Spread.Sheets.SheetArea.viewport);
复制代码
       并且超链接支持表单内跳转设置,例如:
  1. sheet.setHyperlink(5, 3, { url: "sjs://Sheet1!A1:B2"}, GC.Spread.Sheets.SheetArea.viewport);
复制代码
       支持邮件格式跳转设置,例如:
  1. sheet.setValue(5, 3, "ProductGroup@gmail.com")
  2.     sheet.setHyperlink(5, 3, { url: "ProductGroup@gmail.com?subject=Product Details"});
复制代码
       另外,新版超链接与旧版一样,也支持自定义相关设置:
  1. sheet.setValue(5, 3, "alertMessage")
  2.     sheet.setHyperlink(5, 3, { command: function() {
  3.         alert("Hyperlink!")
  4.     }});
复制代码
      相关使用用例可以参考:
       https://demo.grapecity.com.cn/spreadjs/SpreadJSTutorial/features/cells/hyperlink/introduction/purejs


0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部