angular - 如何使用 Ag-Grid 在导出的 excel 单元格中插入链接?
问题描述
我正在使用 ag-grid 在我的角度项目中显示网格数据。在 HTML 中,某些网格单元具有链接。但是当我尝试将网格导出为 excel ( Excel Export ) 时,excel 单元格中的那些链接显示为纯文本。所以,我的问题是如何从 ag-grid 数据在 excel 中插入超链接。
- 有什么方法可以在 excel 单元格中插入公式,例如:=HYPERLINK(<link_>, <text_to_show>) 从 ag-grid 导出 excel 时?
- 我可以在 excel 单元格中呈现 html,以便可以将链接作为锚元素标签从 ag-grid 插入吗?
Ag-grid 数据(在 HTML 中):
我希望导出的 excel 中的相同输出也可以单击这些链接。
注意:我正在使用 ag-grid 企业产品。谢谢。
解决方案
在导出参数中使用processCellCallback
函数来定义您的函数,该函数将在 excel 中创建超链接。
{
name: 'Excel Export (.xlsx)',
action: function () {
params.exportMode = 'xlsx',
params.processCellCallback = customProcessCellCallback
return grid.exportDataAsExcel(params);
}
},
customProcessCellCallback = function (cell) {
var cellVal = cell.value;
if(check for link condition) {
//make sure to handle empty undefined and null.
if (cellVal === "" || cellVal === undefined || cellVal === null) {
cellVal = '';
}
else{
cellVal = '=HYPERLINK("your link here","'+cellVal+'")';
}
}
return cellVal;
}
推荐阅读
- asp.net - ./watch 主要是在编译 JS 库文件,但它总是在缓存一个文件
- javascript - 动态js捆绑同步api调用
- typescript - 如何在 nuxt 的存储/操作中访问 i18n 实例?
- java - AsyncStorage 和 OnSaveInstanceState android 有什么区别
- javascript - 在反应中从状态数组中删除项目
- c# - Cloud firestore WhereIn 方法在.Net 中不起作用
- ruby-on-rails - 使用端点创建用户 - 路由错误
- windows - 如何使用硬编码密码修复 PowerShell 中 WinSCP SFTP 脚本中的安全性
- python - 如何知道我的应用程序上正在运行哪个 Web 服务器
- linux - 无法复制 /dev/sda 分区中的文件/文件夹