【问题标题】:Rewriting into JSON file using JavaScript/jQuery使用 JavaScript/jQuery 重写为 JSON 文件
【发布时间】:2014-07-20 20:59:27
【问题描述】:

我使用 jQuery 从 json 文件中读取,但是当我尝试将其写入同一个文件时,它不起作用。

代码如下:

$.getJSON(src,function(data){
  var about= data.abouttext;
  var mail= data.mail;
  var phone = data.phone;
  $("#about_ta").val(about);
  $("#mail_ta").val(e);
  $("#phone_ta").val(mp);
  $("#wizard_tabs_edit").show();
  $("#mask_edit").show();
  $("#edit_save").on("click",function() {       
    data.abouttext = $("#about_ta").val();
    data.mail = $("#mail_ta").val();
    data.phone = $("#phone_ta").val();

    $.ajax({
      url: src,
      type: "POST",
      data: data,
      contentType: "application/json",
      success: function(response){
        alert("aaa");
      }
    });
    $("#wizard_tabs_edit").hide();
    $("#mask_edit").hide();   
  });
});

src 是文件的路径(在 $.getJSON 工作),当 AJAX 成功时它会给我警报“aaa”。

但是,JSON 文件仍然保持不变。

【问题讨论】:

  • 除非您发布到可以更改 PHP 等文件的服务器后端,否则您将无法 write 更改任意 JSON 文件!
  • 这是一个学校项目,我正在尝试从 json 文件中读取数据(在 localhost 上,路径为 src),然后将其重写为 json 文件。它只能使用 php 发生?
  • @Yehazkel 写入文件是一项服务器任务。使用的语言将取决于服务器环境。虽然可以使用 json 检索数据,但有很多方法可以存储数据
  • Javascript 不能直接修改任何文件,它所能做的就是将数据发送到另一个进行更改的进程。另一个进程可以是任何接受 Http 请求的进程,例如 Php、带有网络服务器的桌面应用程序等

标签: javascript jquery json file


【解决方案1】:

唯一的方法是使用 php 或任何其他可以为您处理文件操作的后端编码语言。下面是一个例子,如果你使用 php5,你可以有一个线索:

<?php

// Specify filename
$filename = 'myJsonFile.json';

// Read data transforming them to an array
$data = json_decode(file_get_contents($filename), true);

// Push to the array a new pair
array_push($data, ['key' => 'value']);

// Open file for writing
$file = fopen($filename, 'w');

// Write data as json
fwrite($file, json_encode($data));

// Close file
fclose($file);

?>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-08-28
    • 2018-12-25
    • 1970-01-01
    • 2012-06-22
    • 1970-01-01
    • 1970-01-01
    • 2019-11-20
    • 1970-01-01
    相关资源
    最近更新 更多