我有一个foo发出Ajax请求的函数.我怎样才能从中回复foo?
我尝试从success回调中返回值,并将响应分配给函数内部的局部变量并返回该变量,但这些方法都没有实际返回响应.
function foo() {
var result;
$.ajax({
url: '...',
success: function(response) {
result = response;
// return response; // <- I tried that one as well
}
});
return result;
}
var result = foo(); // It always ends up being `undefined`.
Run Code Online (Sandbox Code Playgroud) 我得到"对象"值而不是确切的值.如何使用回调函数获取返回的值?
function loadDB(option, callBack){
var dfd = new jQuery.Deferred(),
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;
if( results.rows.length ) {
retval = unescape(results.rows.item(0)['log']);
}
var returnValue = dfd.resolve(retval);
});
});
return dfd.promise();
}
results = loadDB(2).then(function(val){ return val; } );
console.log("response***",results);
Run Code Online (Sandbox Code Playgroud)