使用JQuery简单保存到JSON文件

前端之家收集整理的这篇文章主要介绍了使用JQuery简单保存到JSON文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经尝试了我可以得到我的所有例子,但我不能简单地将 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部分在我上面的代码中什么也没做.甚至不提醒“错误”.其余代码按预期工作.

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

我会感谢有任何帮助或有用的链接有完整的例子.谢谢!

解决方法

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

PHP

<?PHP
$myFile = "general.json";
$fh = fopen($myFile,'w') or die("can't open file");
$stringData = $_GET["data"];
fwrite($fh,$stringData);
fclose($fh)
?>

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

JQUERY

$.ajax
    ({
        type: "GET",url: 'http://your.host/save_json.PHP',data: { data: JSON.stringify(eventsholded) },failure: function() {alert("Error!");}
    });

猜你在找的jQuery相关文章