我在PhoneGap应用程序上遇到SQLite查询问题。 我打开一个文件夹,并为文件夹中的每个条目选择where子句。 我在选择查询之后打开一个for循环,但脚本对所有条目使用相同的变量(它只记住最后一个记录的变量)。 循环正确读取条目的数量,但它仅适用于一个记录的变量,并且它只与文件夹中的文件一起使用多次,只有这些变量。
function readerSuccess(entries) {
var db = window.openDatabase("Test", "1.0", "Demo test", 200000);
db.transaction(function(tx) {
var i;
for (i=0; i<entries.length; i+=1) {
var imgName=entries[i].name;
var upfi=entries[i];
console.log(imgName);
tx.executeSql("SELECT * FROM FOTO WHERE img=?", [imgName], function(tx, result) {
console.log(imgName+" after SQL");
var dataset = result.rows;
console.log("Returned rows = " + dataset.length);
if (dataset.length==0) {
console.log('No rows!');
console.log('File sync: '+imgName);
} else {
console.log('File already sync: '+imgName);
};
}, successCB, errorCB)}}, successCB, errorCB);
};
我已经使用全局变量或局部变量测试但没有成功。 我不知道在哪里转!! :(