在这段代码中,我希望将来自postgresql的“userid”(将作为ajax或变量“res”的“响应”)存储到全局变量“id”中所以我可以将它用于未来的使用。将ajax响应分配给一个全局变量
var id;
function addUser()
{
$.ajax({
url: siteloc + scriptloc + "adduser.py",
data: {username:$("#login").val(), password:$("#password").val(), email:$("#email").val()},
dataType: 'json',
success: function (res) {
window.id = res;
console.log(id);
}
});
}
它在console.log(id)中一切顺利,显示控制台中的id。但是,当我继续下一个功能时,
function setpersonalinfo()
{
$.ajax({
url: siteloc + scriptloc + "setpersonalinfo.py",
data: {userID:id,
fullname:$("#fullname").val(),
birthday:$("#birthday").val(),
gender:$("#gender").val() },
dataType: 'json',
success: function (res) {
console.log("Successfully added.");
}
});
}
“userID:id”中的id无法识别。我该怎么做呢?
你这样做是错误的,不要试图使它同步,因为你不知道如何使用异步代码,学习如何正确地做到这一点。 – adeneo 2014-09-21 16:49:34
我试着做它异步它(它是默认的),但它不工作。那么如何使用@adeneo? – anobilisgorse 2014-09-21 16:51:53
它可能工作得很好,但你不能使用成功回调以外的数据,全局或不是,这就是异步的意思。 – adeneo 2014-09-21 16:53:03