我无法将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对象做些什么?希望,这只是我正在监督的一些语法。非常感谢任何帮助!
答案 0 :(得分:3)
除非您需要在服务器上以某种方式获取JSON数据,否则许多人只需将其保存为文本blob并按原样在客户端上使用它而不进行任何转换。