Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/414.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 导出列时创建超链接_Javascript_Typescript_Angular6_Export_Xlsx - Fatal编程技术网

Javascript 导出列时创建超链接

Javascript 导出列时创建超链接,javascript,typescript,angular6,export,xlsx,Javascript,Typescript,Angular6,Export,Xlsx,我使用以下函数将json从Angular 6项目导出到xls: exportAsExcelFile(jsonData: any[]): void { let exportObj=[{ 'Name':'ABC', 'RollNo':'123', 'url':'www.google.com' }] const ws: XLSX.WorkSheet = XLSX.utils.json_to_sheet(exportObj

我使用以下函数将json从Angular 6项目导出到xls:

 exportAsExcelFile(jsonData: any[]): void {
    let exportObj=[{
      'Name':'ABC',
      'RollNo':'123',
      'url':'www.google.com'
      }]      


    const ws: XLSX.WorkSheet = XLSX.utils.json_to_sheet(exportObj);

    const wb: XLSX.WorkBook = XLSX.utils.book_new();

    XLSX.utils.book_append_sheet(wb, ws, 'Sheet1');
    /* save to file */
    const filename = 'Sample.xlsx';

    XLSX.writeFile(wb, filename);
  }
获得以下输出

应为带有超链接的以下输出

基于这个答案 我检查了所有的ws并更新了以“http”开头的每个单元格,其中包含=HYPERLINK(“http…”,“link text”)

(下面的代码片段需要JQuery才能工作)

var ws = XLSX.utils.json_to_sheet(data);
//Update links
jQuery.each(ws, function(cell, item) {
    if (item.v != null && item.v.toString().indexOf('http') == 0)
        ws[cell] = {f: '=HYPERLINK("' + item.v.toString() + '","link text")'};
});
var wb = XLSX.utils.book_new();
XLSX.utils.book_append_sheet(wb, ws, "TabName");
XLSX.writeFile(wb, "my_file.xlsx");