Javascript 如何通过单击按钮将对象添加到外部JSON文件?
晚安,程序员同事 向JSON文件添加对象时遇到问题。我正在使用jQuery。 我的javascript文件:Javascript 如何通过单击按钮将对象添加到外部JSON文件?,javascript,jquery,json,Javascript,Jquery,Json,晚安,程序员同事 向JSON文件添加对象时遇到问题。我正在使用jQuery。 我的javascript文件: $('addchallenge')。单击(函数() { //硬编码挑战 var addchallenge= { “AchieventName”:“我是一名希望被添加到列表中的成就”, “点数”:“50”, “评论”:“猜猜谁是一个令人讨厌的成就” } $.getJSON(“../json/package.json”),函数(数据) { $.each(data.allachiements
$('addchallenge')。单击(函数()
{
//硬编码挑战
var addchallenge=
{
“AchieventName”:“我是一名希望被添加到列表中的成就”,
“点数”:“50”,
“评论”:“猜猜谁是一个令人讨厌的成就”
}
$.getJSON(“../json/package.json”),函数(数据)
{
$.each(data.allachiements,function()
{
//非常可疑的一行:
此[“成就列表”]。推送(添加挑战);
});
});
});代码>您不能直接操作JSON文件-写入、删除等
但是,您可以编写一些后端代码来实现这一点
如果您只是想暂时添加一项成就,那么可以将JSON文件解析为一个变量,然后对其进行操作 您不能仅使用客户端代码修改JSON文件。您需要一些服务器端代码
我建议你使用
编辑:
事实上,我发现:
因此,当前帖子可能被认为是重复的…您是否试图使用jquery写入文件?
如果是,请检查以下url:
您的问题是这是上下文。在您传递给$的回调内部。每个
迭代器,这个
不是您认为的那样
每个(数组、回调)
回拨
类型:函数(String propertyName,Object valueOfProperty)
将在每个对象上执行的函数
我会这样更改您的代码
:
$.getJSON("../json/package.json", function (data)
{
$.each(data.allachievements, function (key, value)
{
value["achievementlist"] = value["achievementlist"] || [];
value["achievementlist"].push(addchallenge);
});
});