Javascript 函数不等待从phoneGap中的数据库获取值
我有一个简单的函数,它在从SQLite数据库获取数据后返回一个数组。但是,它返回未定义的错误 为了检查问题,我使用了3个警报警报1、警报2和警报3。逻辑上应该有一个类似于警报1->警报2->警报3的序列,但序列是警报1->警报3->警报2 这意味着它不会等待获取数据Javascript 函数不等待从phoneGap中的数据库获取值,javascript,jquery,cordova,web-sql,Javascript,Jquery,Cordova,Web Sql,我有一个简单的函数,它在从SQLite数据库获取数据后返回一个数组。但是,它返回未定义的错误 为了检查问题,我使用了3个警报警报1、警报2和警报3。逻辑上应该有一个类似于警报1->警报2->警报3的序列,但序列是警报1->警报3->警报2 这意味着它不会等待获取数据 function farzigetType() { alert('alert 1'); var arr = []; var qselecttype = "SELECT * FROM " + TABLE_OP_
function farzigetType() {
alert('alert 1');
var arr = [];
var qselecttype = "SELECT * FROM " + TABLE_OP_TYPE;;
db.transaction(function (trans) {
trans.executeSql(qselecttype, [],
function (transaction, result) {
if (result != null && result.rows != null) {
for (i = 0; i < result.rows.length; i++) {
var row = result.rows.item(i);
person = new Object();
person.id = row.id;
person.op_val = row.op_val;
person.op_type = row.op_type;
arr.push(person);
//alert('select optype from'+TABLE_OP_TYPE+'=='+person.op_val+'--'+person.op_type);
}
alert('alert 2');
return arr;
}
}, errorHandler);
}, errorHandler, nullHandler);
alert('alert 3');
}
创建一个回调函数,返回数组,为executeSql语句分配不同的errorHandler函数,并查看失败的是事务还是executeSql。这将有助于追踪这个问题。