如何更新文件中的JSON数据?

时间:2016-04-25 16:36:29

标签: javascript jquery arrays json

我首先使用此JavaScript代码获取JSON数组:



$.getJSON("myJSONfile.json")
    .done(function(data) {
      myData = data;
    }); 




myData是一个全局变量。

然后我将信息添加到myData。然后如何更新myJSONfile.json以包含新数据。

很抱歉,如果那令人困惑。 约什

3 个答案:

答案 0 :(得分:2)

您无法单独使用JavaScript写入任何文件。只是cookie或本地(或会话)存储。您可以将JSON写入本地存储,只需使用JSON.stringify序列化JavaScript对象。

localStorage.setItem('myData', JSON.stringify(myData));

并检索对象

var myData = JSON.parse(localStorage.getItem('myData'));

如果您真的想在文件中写一些内容,则需要使用phpasp等服务器脚本。将myData发送到phpphp会写出您想要的内容。

<?php
$myData = $_GET['myData']

$fp = fopen('myJSONfile.json', 'w');
fwrite($fp, json_encode($myData));
fclose($fp);

?> 

答案 1 :(得分:0)

//步骤1:将数据发送到服务器

allow_nil

//第2步:使用PHP将其写入文件

$.post("handler.php", {data: myData}).done(function(){
    //do something after upload
})

答案 2 :(得分:-1)

现在收到的数据应该在myData变量中。我建议放一个调试器;代码中的语句,以便您可以查看收到的数据。

$.getJSON("myJSONfile.json")
.done(function(data) {
  myData = data;
  debugger;
}); 

如果您在chrome中打开开发人员工具并选择源代码,则下次运行代码时,它会在调试器上暂停;并允许您将myData输入控制台并与对象进行对等。

一旦你知道这一点,你应该能够设置myData.aProperty ='newValue'