我试图编写一个JavaScript函数来检索与提供的电子邮件地址相对应的姓氏,但到目前为止还没有成功。这是我的代码:
function getUsername(){
var username;
$(function(){
var dataString = 'email=' + EMAIL_ADDRESS;
$.ajax({
url: 'user_crud_operations.php',
data: dataString,
dataType: 'json',
success: function(data){
U = data[1];
username = data;
}
});
});
return username;
}
我需要在其他地方的其他功能中使用检索到的用户名。我哪里错了?
答案 0 :(得分:0)
异步函数(在AJAX中使用)通常不返回值,而是触发回调函数。
您必须重新设计您的设计,以便" getUserName()"传递给回调而不是返回值。例如:
function getUsername(handler) {
// ...
$.ajax({
// ...
}).done(function(username) {
if (handler && (typeof(handler)==='function')) {
handler(username);
}
});
}
// Sample usage...
getUsername(function(username) {
alert("OK: username=" + username);
});