var results = null;
function fetchdata(option, callback) {
var db = window.openDatabase('mydb', '1.0', 'Test DB', 1024*1024),
selectQuery = "SELECT log FROM LOGS WHERE id = ?";
db.transaction(function(tx){
tx.executeSql(selectQuery,[option],function(tx,results){
if( results.rows.length ) {
retval = unescape(results.rows.item(0)['log']);
}
var returnValue = callback(retval);
return returnValue;
});
});
}
result = fetchdata(2,function(val){ return val; });
console.log("response***",results);
答案 0 :(得分:0)
我很确定这就是你想要做的。您从事务函数中传递回调中的值...
function fetchdata(option, callback) {
var db = window.openDatabase('mydb', '1.0', 'Test DB', 1024*1024),
selectQuery = "SELECT log FROM LOGS WHERE id = ?";
db.transaction(function(tx){
tx.executeSql(selectQuery,[option],function(tx,results){
var retval; // I added this line so you don't get an error
if( results.rows.length ) {
retval = unescape(results.rows.item(0)['log']);
}
callback(retval);
});
});
}
然后你可以在它返回时进行处理。
fetchdata(2, function (val) {
console.log("response***", val);
});