如何在电子邮件中以附件形式发送kendo ui网格数据?

问题描述 投票:0回答:1

我必须发送电子邮件,并附带kendo ui网格数据。如果我使用excel导出,则无法在特定位置的项目文件夹中自动保存文件。我无法自定义saveAsExcel()方法。

所以我不想将该文件保存在本地文件夹中。有什么办法吗?

我无法将文件自动下载到项目中的特定文件夹。每次要求保存在特定位置时。

我正在尝试将文件自动保存到项目中的特定文件夹,并尝试将该文件附加到电子邮件中。

保存网格时,我没有在excel中获取任何数据。我也想避免另存为弹出窗口来保存文件。

var grid = $("#MyReport").data("kendoGrid");
    var trs = $("#MyReport").find('tr');
    var rows = [];
    for (var i = 0; i < trs.length; i++) {

        var dataItem = grid.dataItem(trs[i]);
        rows.push({
            cells: [

                dataItem

            ]
        })

    }



var workbook = new kendo.ooxml.Workbook({  
    sheets: [  
      {   title: "EmployeeInfo",  
          rows: rows  
      }  
    ]  
});  
kendo.saveAs({ dataURI: workbook.toDataURL(), fileName: "EmployeeInfo.xlsx" });  

}

kendo-ui kendo-grid kendo-asp.net-mvc
1个回答
0
投票

您走错了路。在实际情况下,您的项目应该在服务器上。当用户单击网格上的导出时,将提示您将其保存在本地计算机上,而不是保存在服务器上的项目中。剑道出口是客户端出口。您需要在服务器端进行导出,将文件保存在服务器上,并在通过项目发送邮件时将其附加。

采取的步骤:

  1. 在导出按钮上,单击发送参数page_sizepage
  2. 在具有参数的服务器端从数据库获取数据
  3. 在服务器端使用数据库中的数据创建文件(excel)
  4. 在服务器端通过邮件客户端附加文件创建并发送
© www.soinside.com 2019 - 2024. All rights reserved.