2013-03-08 87 views
0

我有一个Javascript变量,它是一个带有键和数组的对象(缩写版本如下所示)。我使用HTML格式编写脚本,以便有权访问的用户(在他们登录后)可以删除,添加或更改任何其族谱的密钥。我需要知道的是如何使用这个新的,更改过的变量并将其保存到服务器,例如userNameGenealogy.js,以便其他页面可以使用它。我做了一些搜索,但不知道我需要的只是面向PHP,或者如果我需要查看AJAX或JSON。在一个新文件中保存一个Javascript变量

var genealogy = {}; 
    genealogy["Johnson"] = { 
     "Ron": new Array(
      {"nickname":"Ronny","dob":"06/20/88"}, 
      {"nickname":"Ronald","dob":"03/15/54"}), 
     "Scott": new Array(
      {"nickname":"Scotty","dob":"01/21/42"}) 
    }; 

这只是一个小片段,但我不希望有改变的JavaScript的格式,作为网站的其余部分编码与它合作的是。任何帮助/点在正确的方向将不胜感激。

+0

从服务器中你是如何获取的东西呢? – Stevo 2013-03-08 07:44:50

+0

这是一个单独的JavaScript文件,使用脚本src在页面加载时调用 – 2013-03-08 07:59:54

+0

因此,您将数据存储在'.js'文件中,然后将其作为src进行检索?这不是一个好办法。本质上你应该有一个前端和后端,并使用正常的发送和接收之间传递数据,或者创建一个后端api,并在前端使用ajax交换数据。 – Stevo 2013-03-08 08:40:21

回答

0

您需要为此使用ajax。例如用ajax()并传递给data参数。然后,您需要在PHP脚本中处理该脚本,在该脚本中,您必须阅读$ _POST(在下面的情况下)根据需要解析它,保存到文件和回显响应中。

JavaScript代码:

$.ajax({ 
    type: "POST", 
    url: "some.php", 
    data: { name: "John", location: "Boston" } 
}).done(function(msg) { 
    alert("Data Saved: " + msg); 
}); 
+0

这似乎只是将对象的文字传递给我将创建的PHP函数。用户将能够删除整个“Ron”或“Scott”阵列等等。是否有可能发送超出键/值对之外的任何内容? – 2013-03-08 08:12:08

+0

您可以发送任何您喜欢的东西:对象,数组,字符串,整数等。它可以满足您的要求,您将如何格式化数据以及哪种方式最有效。 – Michael 2013-03-08 08:20:12

+0

所以可以传递变量族谱,它将包含所有的键/数组等,或者我需要使用循环来传递所有内容? – 2013-03-08 08:27:04

相关问题