相关疑难解决方法(0)

P5js SVG导出

我有一个P5js草图,该草图创建了一种字体,用户可以键入所需的任何字体。我想允许用户下载其结果的svg / pdf(矢量)版本。到目前为止,我已经成功地让他们使用保存顺序下载了.jpg版本并保存了我的屏幕快照。有任何想法吗?

javascript p5.js

6
推荐指数
2
解决办法
1983
查看次数

如何以编程方式在Javascript中创建可由用户下载的客户端文件?

我想尝试创建一个Javascript应用程序,它从表单中获取用户的输入,然后根据用户的表单输入生成一个文件.

然后,用户可以在不触及服务器的情况下下载该文件.

如何在客户端使用JavaScript创建文件,在客户端如何存储文件,以便可以在不首先在服务器上创建的情况下下载?

更新:更具体的是,Graham回答说,我一直在寻找创建文件的方法,而不必触及文件系统本身,只是创建一个可由用户下载的文件对象(Blob).谢谢格雷厄姆!

javascript file client-side

5
推荐指数
1
解决办法
2万
查看次数

如何在.txt文件中保存Html表数据?

这是我的Html表.

<table>
  <thead>
    <tr>
      <th>First Name</th>
      <th>Last Name</th>
      <th>Email Id</th>
      <th>Phone Number</th>
      <th>Prefered Contact</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>James</td>
      <td>Miles</td>
      <td>james@abcd.com</td>
      <td>9876543210</td>
      <td>email</td>
    </tr>
    <tr>
      <td>John</td>
      <td>Paul</td>
      <td>john@abcd.com</td>
      <td>9638527410</td>
      <td>phone</td>
    </tr>
    <tr>
      <td>Math</td>
      <td>willams</td>
      <td>Math@abcd.com</td>
      <td>99873210456</td>
      <td>phone</td>
    </tr>
  </tbody>
</table>
Run Code Online (Sandbox Code Playgroud)

在此表中有Save Button.

<input type="button" id="txt" value="Save" />
Run Code Online (Sandbox Code Playgroud)

按钮代码

function tableToJson(table) {
  var data=[];
  var headers=[];
  for (var i=0;
  i < table.rows[0].cells.length;
  i++) {
    headers[i]=table.rows[0].cells[i].innerHTML.toLowerCase().replace(/ /gi, '');
  }
  for (var i=1;
  i < table.rows.length;
  i++) {
    var tableRow=table.rows[i];
    var rowData= {} …
Run Code Online (Sandbox Code Playgroud)

html javascript jquery

5
推荐指数
1
解决办法
6818
查看次数

使用php和ajax生成和下载CSV文件

我有一个php创建 CSV 文件的页面,然后浏览器会自动下载该文件。这是一个带有示例数据的版本 - 效果很好。

<?php

$cars = array(
  array("Volvo",22,18),
  array("BMW",15,13),
  array("Saab",5,2),
  array("Land Rover",17,15)
  );

// output headers so that the file is downloaded rather than displayed
header('Content-Type: text/csv; charset=utf-8');
header('Content-Disposition: attachment; filename=csvfile.csv');

// create a file pointer connected to the output stream
$output = fopen('php://output', 'w');

// output the column headings
fputcsv($output, array('Car', 'Year', 'Miles' ));

//Loop through the array and add to the csv
foreach ($cars as $row) {
    fputcsv($output, $row);
}

?>
Run Code Online (Sandbox Code Playgroud)

我希望能够从另一个页面运行它,ajax以便用户可以在 …

javascript php csv ajax jquery

5
推荐指数
2
解决办法
1万
查看次数

在 Chrome 扩展程序中创建文件

我想知道如何使用 JavaScript 或 Chrome API 创建位于扩展根目录中的自定义文件。

扩展根目录如下所示:

  • 弹出窗口.html
  • 弹出窗口.js
  • 清单文件
  • 图标.png

我想在该根目录中创建名为 test 的 JSON 文件。

所以在那之后它应该是这样的:

  • 弹出窗口.html
  • 弹出窗口.js
  • 清单文件
  • 图标.png
  • 测试文件

test.json应包含:

{
  "data": "123456789"
}
Run Code Online (Sandbox Code Playgroud)

它不是重复的,因为该帖子用于文件对话框,我需要将其保存在固定位置和扩展文件夹中。正如我所说,我想创建它,而不是下载它。

javascript google-chrome file google-chrome-extension

5
推荐指数
1
解决办法
2600
查看次数

将文件写入客户端磁盘时从 blob 创建/对象 URL 中释放内存

更新

由于提出了下面的问题并在发现代码中的错误后得出了一个更基本的问题,我发现了更多信息,例如在 MDN Web 文档中的下载 API 方法 downloads.download() 中,它指出对象的撤销url 仅应在文件/url 下载后执行。因此,我花了一些时间试图了解 Web 扩展是否使下载 API onChanged 事件对网页的 javascript“可用”,但我认为不会。我不明白为什么下载 API 仅适用于扩展程序,特别是当存在很多与内存使用/对象 url 撤销问题有关的问题时。例如,等待用户完成 JavaScript 中的 blob 下载

如果你知道的话请解释一下吗?谢谢。


从关闭的 Firefox 浏览器开始,右键单击要在 Firefox 中打开的本地 html 文件,它将打开并显示五个 firefox.exe 进程,如 Windows 任务管理器中所示。其中四个进程的启动内存介于 20,000k 到 25,000k 之间,一个进程的内存约为 115,000k。

此 html 页面有一个 indexedDB 数据库,其中有 50 个对象存储,每个存储包含 50 个对象。每个对象都从其对象存储中提取并使用 JSON.stringify 转换为字符串,然后写入二维数组。然后,数组的所有元素被连接成一个大字符串,转换为一个 blob,并通过 URL 对象写入硬盘,该对象随后立即被撤销。最终文件大约190MB。

如果代码在转换为 blob 之前停止,则 firefox.exe 进程之一的内存使用量会增加到大约 425,000k,然后在数组元素连接成一个数组后大约 5-10 秒内回落到 25,000k。单字符串。

如果代码运行完成,同一 firefox.exe 进程的内存使用量将增长到大约 1,000,000k,然后下降到大约 225,000k。以 115,000k 启动的 firefox.exe 进程也在代码的 blob 阶段增加到约 …

javascript memory-leaks blob revokeobjecturl

3
推荐指数
1
解决办法
7858
查看次数

JavaScript atob 与 Notepad++ Base64 解码不同

我正在接收 zip 文件的内容(来自 API)作为 Base64 编码的字符串。

如果我将该字符串粘贴到 Notepad++ 中并转到

插件 > MIME 工具 > Base64 解码

并将其另存为test.zip,它就成为一个有效的zip文件,我可以打开它。

现在,我正在尝试在 JavaScript 中实现同样的目标。

我已经尝试过atob(),可能这里的答案中提到的所有内容以及Mozilla 文档中的代码

atob产生类似的内容,但某些字符的解码方式不同(因此成为无效的 zip 文件)。其他方法会抛出无效 URI 错误。

如何在 JavaScript 中重现 Notepad++ 行为?

javascript base64

1
推荐指数
1
解决办法
849
查看次数

保存过滤器,无数据 WebDataRocks

我有一个接收 .JSON 的表。我创建了一些过滤器,我想保存它们,但不保存当时使用过滤器收到的信息。我已经尝试过:

pivot.getData({},
    function(data) {
        console.log(data);
    },
    function(data) {
        console.log(data);
    }
);
Run Code Online (Sandbox Code Playgroud)

var report = pivot.getReport();
console.log(report);
Run Code Online (Sandbox Code Playgroud)

最后

pivot.save({filename:'reporte.json',embedData : false });
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助

javascript jquery webdatarocks

0
推荐指数
1
解决办法
119
查看次数