仅使用JavaScript / jQuery在网页中下载JSON文本文件

时间:2011-08-18 21:10:11

标签: javascript jquery json file html5

我有一个在我的机器上本地运行的网页,只有JavaScript和HTML5本地存储(不需要网络服务器)。我已经have the method用于将JSON /纯文本文件仅使用JavaScript上传到网页并将其转换为JavaScript对象,以便我的网页可以使用它。现在我只需要一种方法将对象导出回JSON文本,然后让用户使用纯JavaScript / HTML保存/备份数据。

好的示例代码到目前为止:

var obj = {
    id: 24,
    name: 'Jack Bauer'
};
var jsonText = JSON.stringify(obj);

现在假设有一个按钮说明导出/备份,如何让用户仅使用JavaScript / HTML将jsonText保存为硬盘上的文件?

非常感谢!

2 个答案:

答案 0 :(得分:1)

很确定你做不到。命令document.execCommand('saveas',blah,blah)将保存当前网页(不是您使用javascript指定的内容),除此之外,没有办法从javascript中获取保存为对话框。

其他一些选择:

  • 使用localstorage
  • 使用Cookie
  • 在textarea / prompt对话框/ etc中显示jsontext并询问用户 复制它并将其保存在某处(哎呀!)
  • 将jsontext发送到(例如)php服务器,添加内容处置 标题显示另存为对话框。

答案 1 :(得分:0)

我认为如果您使用application/octet-stream作为内容类型提供文件,它将会起作用。您需要配置您的网络服务器才能这样做。