使用javascript更新json文件

DrB*_*oon 6 javascript php jquery json asp-classic

我想通过说我知道我在做什么并不理想来作为序言.有了这个:

我需要通过javascript更新JSON文件中的数据.这是目前的JSON文件:

{
"nextid" : 3,
"ingredients" : [
{
    "id": 1,
    "name": "onion",
    "kilojoules": 180,
    "quantity": 1,
    "measurement": "whole",
    "nutrition": [
        {"value": "Fat Total", "quantity": 110},
        {"value": "Saturated Fat", "quantity": 46},
        {"value": "Sodium", "quantity": 4},
        {"value": "Carbohydrates Total", "quantity": 10000},
        {"value": "Sugar", "quantity": 5000},
        {"value": "Fibre", "quantity": 2000},
        {"value": "Proten", "quantity": 1000}
    ]},

{
    "id" : 2,
    "name": "carrot",
    "kilojoules": 56,
    "quantity": 1,
    "measurement": "whole",
    "nutrition": [
        {"value": "Fat Total", "quantity": 66},
        {"value": "Saturated Fat", "quantity": 11},
        {"value": "Sodium", "quantity": 26},
        {"value": "Carbohydrates Total", "quantity": 3000},
        {"value": "Sugar", "quantity": 2000},
        {"value": "Fibre", "quantity": 1000},
        {"value": "Proten", "quantity": 279}
    ]}
]

}
Run Code Online (Sandbox Code Playgroud)

现在让我们说我想编辑胡萝卜对象.我在我的html页面上构建了一个更新的胡萝卜对象,并将其作为javascript中的对象.我需要做些什么才能使用我的编辑来更新源json?

就像我之前说过的,我知道这不太理想.我应该使用一个数据库来存储和操作数据,但我现在已经把我的床铺了起来,我必须让它工作,不管它有多大可能会让你感到畏缩.

研究告诉我,我将需要在服务器端使用PHP或ASP来收集javascript传递给它的参数,但我不知道从哪里开始.

我在visual studio 2012工作,项目的参数禁止我使用插件.NuGet代码库是的,但没有插件.在此基础上,我认为这意味着我不能使用PHP.我的想法是否正确?

注意:是的,它用于分配,但是更改json文件超出了要求的范围.能够动态处理json数据对于项目来说已经足够了,我真的很想能够放回一些.

提前致谢

编辑:可能也应该分享这个.这是打开json文件的javascript.打开的结果存储在名为ingJson的脚本范围变量中.

function downloadIngredients() {
$(document).ready(function () {
    $.getJSON("/data/ingredientsInfo.js", function (result) {
        try
        {
            ingJson = result;
            ingredients = result.ingredients;
            ingredients.sort(orderByNameAscending);
            buildListBox(ingredients);
        }
        catch (err) {
            alert(err.message);
        }
    });
});
}
Run Code Online (Sandbox Code Playgroud)

Cer*_*rus 3

编辑 JSON 文件:

  1. 用php打开文件
  2. 将内容发送到浏览器(只需将其作为字符串转储到脚本标记中的变量中)
  3. 使用 JavaScript解析JSON(onload -> 从脚本标记中获取字符串)
  4. 编辑对象
  5. 再次将其转换为 JSON 字符串
  6. 其发送回php
  7. php 覆盖该文件。

遗憾的是,您不能直接在 php 中编辑文件,这会导致步骤 2-6 不必要,您只需在 php 中解析编辑编码JSON。

编辑:由于您似乎已经拥有 JavaScript 中的数据,因此考虑了步骤 1-3。