Javascript 通过YUI IO实用程序将JSON对象发送回服务器?

Javascript 通过YUI IO实用程序将JSON对象发送回服务器?,javascript,python,django,yui,Javascript,Python,Django,Yui,我正在运行一个生成随机数据并将其显示在HTML表中的网页。从表中,我运行一个循环来收集基本信息(所有存在的行和排除表头的行)。这些数据存储在一个名为jData的JSON对象中 我想将这些数据发送回服务器并存储在名为data的sqlite表中。我试图通过YUI IO实用程序来实现这一点 我试图涉猎API文档,但我没有运气。我在页面上有两个按钮。一个用于生成数据,另一个用于存储数据。门店代码如下: var savedata = function(){ var tabledata = Y.on

我正在运行一个生成随机数据并将其显示在HTML表中的网页。从表中,我运行一个循环来收集基本信息(所有存在的行和排除表头的行)。这些数据存储在一个名为jData的JSON对象中

我想将这些数据发送回服务器并存储在名为data的sqlite表中。我试图通过YUI IO实用程序来实现这一点

我试图涉猎API文档,但我没有运气。我在页面上有两个按钮。一个用于生成数据,另一个用于存储数据。门店代码如下:

var savedata = function(){
    var tabledata = Y.one("#generatedtable")._node;
    var jData = [];
    var i = 1;
    var length = tabledata.rows.length
    while (i<length){
        var samplerow = {};
        var r = tabledata.rows[i];
        samplerow.timestamp = r.cells[0].innerHTML;
        samplerow.volts = r.cells[1].innerHTML;
        samplerow.amps = r.cells[2].innerHTML;
        samplerow.kW = r.cells[3].innerHTML;
        samplerow.kWh = r.cells[4].innerHTML;
        jData.push(samplerow);
        i++;
        }

Y.io("./savedata", Y.System_Config.postjData(jData));
};
var savedata=function(){
var tabledata=Y.one(#generatedtable”)。_节点;
var jData=[];
var i=1;
变量长度=tabledata.rows.length
while(i您应该阅读。在YUI中使用JSON数据发出POST请求非常简单,只需将HTTP方法设置为POST,添加数据并将
内容类型
设置为
application/JSON
。唯一需要注意的是,您需要首先使用
JSON.stringify()
将JSON对象转换为字符串

您可以在《用户指南》一节中阅读有关IO的所有配置选项的更多信息。其中有一个使用JSON数据的POST请求示例。

您应该阅读。在YUI中使用JSON数据发出POST请求非常简单,只需将HTTP方法设置为POST,添加数据并将
内容类型设置为
ap即可application/json
。唯一需要注意的是,首先需要使用
json.stringify()
将json对象转换为字符串


您可以在《用户指南》的一节中阅读有关IO的所有配置选项的更多信息。这里有一个使用JSON数据的POST请求示例。

如何使按钮调用此Y.IO函数?具体发生了什么?一旦按下按钮,它是否会调用url栏中的path/savedata?是否必须将其写入视图?Sor感谢您提出所有这些看似基本的问题。您还可以详细说明下一步的成功是什么?什么样的功能。这是我编写数据库交互代码的地方吗?这一切都发生在浏览器中。您需要在服务器中处理数据库代码。AJAX在不重新加载页面或更改的情况下发出网络请求g浏览器导航栏中的URL。我建议您阅读AJAX请求及其工作原理。这里有一个很好的介绍:。我更新了答案,以便更清楚地了解成功函数的外观。我如何使按钮调用此Y.io函数?到底发生了什么事?一旦我按下按钮,它会调用ur中的path/savedata吗l bar?我必须把它写进我的视图吗?很抱歉问了这么多看似基本的问题。你能详细说明下一步成功应该做什么吗?什么样的功能。这是我写数据库交互代码的地方吗?这都是在浏览器中发生的。你需要在服务器中处理数据库代码。AJAX是一个网络在不重新加载页面或更改浏览器导航栏中的URL的情况下执行请求。我建议您阅读AJAX请求及其工作原理。这里有一个很好的介绍:。我更新了答案,以便更清楚地了解成功函数的外观。
Y.io('/savedata', {
  method: 'POST',
  data: Y.JSON.stringify(jData),
  headers: {
    'Content-Type': 'application/json'
  },
  on: {
    success: function (id, response) {
      // do something with the response from the server, for example
      Y.one('#some-node').set('text', response.responseText);
    }
  }
});