将JSON对象插入客户端Web sql db

时间:2012-02-05 22:26:32

标签: jquery json insert web-sql

我无法将JSON调用的对象加载到客户端sql db。

在我的特定情况下,我有3个从“jQuery.getJSON”返回的对象,并希望将“content”键的值插入客户端Web数据库,以便我的db包含以下内容:

id content
 1 "Text A"
 2 "Text B"
 3 "Text C"

然而,问题是我的“for”循环在开始执行db事务之前循环遍历所有返回的JSON对象。结果,我在我的数据库中得到以下结果:

id content
 1 "Text C"
 2 "Text C"
 3 "Text C"

以下是代码:

    jQuery.getJSON( url, params, function(obj, status, xhr){
      $('#myMessageCount').html(obj.length);
      var dbTable = 'messages';
      var jsObject = null;
      for (var i=0; i < obj.length; i++) 
      {
        jsObject = obj[i].message.content;
        db.transaction(function (tx) {
          tx.executeSql('INSERT INTO ' 
            + dbTable 
            + ' (content) VALUES (?)'
            , [jsObject], successHandler, errorHandler);
        });
       }
    });

在尝试插入数据库之前,我可能需要对JSON对象做些什么?希望,这只是我正在监督的一些语法。非常感谢任何帮助!

1 个答案:

答案 0 :(得分:3)

除非您需要在服务器上以某种方式获取JSON数据,否则许多人只需将其保存为文本blob并按原样在客户端上使用它而不进行任何转换。