私のデータベースにデータを照会しようとしました。しかし、データを照会すると、最後のアラートの後にデータを取得することができました。これはalert("Total...")
です。たとえば、次のコードを実行します。「結果行:」のアラートは、最後のアラートが表示された後にのみ表示されます。理由を知ることができますか?選択クエリのシーケンスが正しくない
function (result) {
window.location.href = "#/app/CustHomePage";
var totalBalance = 0;
var tableRef = document.getElementById("myList").getElementsByTagName("tbody")[0];
for (var i = 0; i < tableRef.rows.length; i++) {
alert(tableRef.rows[i].cells[3].innerHTML.substr(1));
var addBalance = parseInt(tableRef.rows[i].cells[3].innerHTML.substr(1));
totalBalance = totalBalance + addBalance;
}
alert(totalBalance);
var myText = result.text;
var myTextTwo = myText.replace(/['"]+/g, '');
alert(myTextTwo);
var custBal;
var myDB = window.sqlitePlugin.openDatabase({ name: "mySQLite.db", location: 'default' });
alert("Hello");
myDB.transaction(function(transaction) {
alert("Hello");
transaction.executeSql("SELECT customerBalance FROM customer where nric = '" + myTextTwo + "'", [], function (tx, results) {
var len = results.rows.length;
for (var i = 0; i < len; i++) {
custBal = results.rows.item(i).customerBalance;
alert("result row" + results.rows.item(i).customerBalance);
alert("CustomerBal" + custBal);
}
},
function(tx, error)
{
}
);
});
alert("Total after entitled discount: ");
alert("Transaction successful, Next Customer Please");
}
データベースプルがまだ完了していなくても、コールバックが必要です。コードは引き続き実行されます。あなたのsqliteプルのコードはどこにありますか、特に結果が警告される行があります。 –
@PatrickMurphyが編集しました。 – qcc