我遇到以下功能问题。目的是从json feed获取数据并使用jquery mobile将其添加到脱机数据库。数据库部分工作正常。 json部分获取的数据很好,但由于某些原因无法将其添加到数据库。Jquery Json Cordova问题
难道tx.executable方法在json函数中是不可用的吗?如果是这样,我该如何解决这个问题?
任何想法真的很感激!
function SyncDataQuery(tx) {
tx.executeSql('DROP TABLE IF EXISTS Picato');
tx.executeSql('CREATE TABLE IF NOT EXISTS Picato (id unique, date date,am_pm)');
//code to get Json data from server.
$.ajax({
url: 'http://url1 2 3', //fake url.
dataType: 'jsonp',
jsonp: 'jsoncallback',
timeout: 5000,
success: function(data, status){
$.each(data, function(i,item){
var insId = parseInt(item.idservice);
var insDate = item.date;
var insTime = item.am_pm;
//alert(insId + insDate + insTime);
tx.executeSql('INSERT INTO Picato (id, date, am_pm) VALUES (insId, insDate,insTime)');
});
},
error: function(){
console.log('There was an error loading the data.');
}
});
}
谢谢你的建议,但它仍然没有奏效。一切正在工作。它只是循环中的tx.executesql行,似乎失败了,但我不知道为什么。任何其他想法? –
似乎db.transaction仍然无法在$ .ajax回调内工作 –
我建议您发布一个完整的,自包含的测试程序,可以证明问题。另外,我建议你先用Web SQL尝试一下。如果您遇到与Web SQL相同的问题,更多人将能够为您提供帮助。 – brodybits