我需要在Javascript / HTML5中开发一个可在移动设备(iOS / Android)上运行的应用程序。此应用程序必须仅在客户端运行(无服务器交互)。它必须接收表单信息并在本地生成CSV文件。生成后,它应该打开本地邮件客户端并将CSV文件附加到邮件中。
这可能吗?我找到了有关如何生成CSV文件的信息,但它们都以调用动态创建的a
链接的click
函数结束 - 这会将CSV文件下载到用户的手机中。如果此步骤可以自动转换为附加了CSV文件的新电子邮件,那么这将是最佳解决方案。
答案 0 :(得分:1)
我写了一个轻量级的客户端CSV生成器库,可能会派上用场。在https://github.com/lbrtw/csv
上查看在适当的位置,您只需使用getFileContents
方法即时window.open
或location.href = ...
生成并通过电子邮件发送CSV文件,如下所示:
var propertyOrder = ["name", "age", "height"];
var csv = new Csv(propertyOrder);
csv.add({ name : "Anders",
age : 38,
height : "178cm" });
csv.add({ name : "John Doe",
age : 50,
height : "184cm" });
var fileContents = csv.getFileContents();
var link = "mailto:" + emailAddress + "?subject=CSV&body=" + fileContents;
// This action should open the default email app:
window.location.href = link;
// , and if that doesn't work, try this instead:
window.open(link);