【发布时间】:2014-01-23 17:59:58
【问题描述】:
我已经尝试了所有可以使用的示例,但我不能简单地将 JSON 数据保存到主机上的 JSON 文件中。我想从一个尽可能简单的保存方法开始,这样我就有了一个起点。
这是我得到的: 基本上我的 index.html 中有一个按钮,单击该按钮应将数据保存到我的 general.json 文件(与 index.html 相同的位置)。
<button id="savebtn">Save</button>
在 myscript.js 中使用 id 选择器,我这样做:
$('#savebtn').click(function() {
var saveit = $('#calendar').fullCalendar( 'clientEvents');
var eventsholded = [];
$.each(saveit, function(index,value) {
var event = new Object();
event.id = value.id;
event.start = value.start;
event.end = value.end;
event.title = value.title;
event.allDay = value.allDay
eventsholded.push(event);
});
$.ajax
({
type: "GET",
dataType : 'json',
async: false,
url: 'general.json',
data: JSON.stringify(eventsholded),
success: function () {alert("Thanks!"); },
failure: function() {alert("Error!");}
});
如您所见,我想存储来自 fullcalendar 的事件。这不是很相关,因为到目前为止它工作正常。 如果我在屏幕上提醒 JSON.stringify(eventsholded),你会看到:
[{"start":"2014-01-07T08:30:00.000Z","end":"2014-01-07T12:30:00.000Z","title":"Pumukli Pista","allDay":false},{"start":"2014-01-11T13:30:00.000Z","end":"2014-01-11T18:30:00.000Z","title":"Fanic Catalin","allDay":false}]
现在这正是我想以简单、快速、可能不安全但非常简单的方式保存到服务器的内容。这样我就可以开始了解它是如何工作的,只是为了让它我的 general.json 文件。
$.ajax 部分在我上面的代码中没有任何作用。甚至没有警告“错误”。其余代码按预期工作。
安全性现在不重要了。我只是想了解它是如何工作的。
我将不胜感激任何包含完整示例的帮助或有用的链接。谢谢!
【问题讨论】:
-
我认为您不能以这种方式保存到文件中,因为您需要在另一端有一个网络服务器来进行保存(或者也许您有那个,我必须没看到)。但我注意到的是,您将
general.json称为具有json属性的对象general,而不是文件名“general.json”。如果您打开控制台,您可能会看到错误消息“general.json 未定义”或类似内容。这就是您没有收到错误消息的原因。 -
url: general.json在我的问题中是一个错误。现已编辑。好吧,我可以读取一个 json 文件,所以我想知道如何编写一个。我将所有这些都托管在网络服务器上,并使用 XAMPP 进行开发。现在我正在寻找实现保存/写入此 .json 文件的方法。