使用JQuery简单保存到JSON文件

我已经尝试了所有可以实现的示例,但我不能简单地将JSON数据保存到主机上的JSON文件中。 我想从一个简单的尽可能保存方法开始,所以我有一个地方可以开始。

这就是我得到的:基本上我在index.html中有一个按钮,点击它应该将数据保存到我的general.json文件(与index.html相同的位置)。

 

使用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部分在我上面的代码中什么都不做。 甚至没有警告“错误”。 其余代码按预期工作。

安全现在并不重要。 我只是想了解它是如何工作的。

对于有完整示例的任何帮助或有用链接,我将不胜感激。 谢谢!

$.ajax单独不会保存json文件,你需要将url属性指向服务器端脚本,即http://your.host/save_json.php ,它将创建general.json并在其上写入输出。 就像是:

PHP:

  

您还需要将ajax调用中的data属性更改为data: {data: JSON.stringify(eventsholded)} ,以便为GET变量提供可从PHP检索的正确名称:

JQUERY

 $.ajax ({ type: "GET", dataType : 'json', async: false, url: 'http://your.host/save_json.php', data: { data: JSON.stringify(eventsholded) }, success: function () {alert("Thanks!"); }, failure: function() {alert("Error!");} });