Javascript 从sql请求获取返回值
我目前正在使用phonegap和sqllite开发一个小应用程序。 填充数据库效果良好;但是我需要一个函数,它返回一个html字符串作为id 我有一个来自互联网的小片段,为了达到我的目的,我对它进行了改进,但它并不像预期的那样工作:Javascript 从sql请求获取返回值,javascript,sql,html,sqlite,Javascript,Sql,Html,Sqlite,我目前正在使用phonegap和sqllite开发一个小应用程序。 填充数据库效果良好;但是我需要一个函数,它返回一个html字符串作为id 我有一个来自互联网的小片段,为了达到我的目的,我对它进行了改进,但它并不像预期的那样工作: function getPriceFromDatabase(id) { var result = []; // Query the database // function queryDB(tx) { tx.executeSql('SELECT * F
function getPriceFromDatabase(id) {
var result = [];
// Query the database
//
function queryDB(tx) {
tx.executeSql('SELECT * FROM PRICEFTS WHERE pid MATCH ' + id, [], querySuccess, errorCB1);
}
// Query the success callback
//
function querySuccess(tx, results) {
var len = results.rows.length;
for (var i = 0; i < len; i++) {
result.push('<span class="'+results.rows.item(i).priceart+'">'+results.rows.item(i).price+'</span>');
}
}
// Transaction error callback
//
function errorCB1(err) {
console.log("Error SQL: " + err.code);
}
// Transaction success callback
//
var db = window.openDatabase("sucheDB", "1.0", "Suche DB", 52428800);
db.transaction(queryDB, errorCB1);
return result.join('');
}
结果我总是“未定义”
有人能帮忙吗
谢谢 您应该为db.transaction调用提供成功回调,如下所示:
db.transaction(queryDB, errorCB1, querySuccess);
此外,此函数可能是异步的,因此在事务完成之前执行返回
db.transaction(queryDB, errorCB1, querySuccess);