这是我的jQuery函数,
$.post("assets/scripts/chat/get_user_info.php", {UserID: UserID}, function(data){
if (data == "error") {
alertBar('negative','There was an error sending the message');
}
var username = data;
})
但我只在函数本身中使用“data”或“username”变量,那么如何在整个页面中全局使用它呢?
答案 0 :(得分:5)
在函数外部的全局范围中定义变量。
var username, data;
$.post("assets/scripts . . .
答案 1 :(得分:2)
无论
window.data = data
或
username = data
事情是,$.post
是异步的,所以你将无法做类似......
$.post( ... )
alert(window.data);
答案 2 :(得分:1)
尝试
var globalData;
var username;
$.post("assets/scripts/chat/get_user_info.php", {UserID: UserID}, function(data){
if (data == "error") {
alertBar('negative','There was an error sending the message');
}
globalData = data
username = data;
})
答案 3 :(得分:1)
你能做的是
var myglobaldata = {};
$.post("assets/scripts/chat/get_user_info.php", {UserID: UserID}, function(data){
if (data == "error") {
alertBar('negative','There was an error sending the message');
}
myglobaldata.username = data;
})
现在,您可以从任何地方访问myglobaldata.username
。
答案 4 :(得分:0)
您可以使用.data()将其保存为数据:
$.post("assets/scripts/chat/get_user_info.php", {UserID: UserID}, function(data){
if (data == "error") {
alertBar('negative','There was an error sending the message');
} else {
$(document).data('userInfo', data);
}
});
然后您可以通过执行以下操作来访问它:
var userInfo = $(document).data('userInfo');
答案 5 :(得分:0)
window.username = data
将使其成为全局变量。虽然这通常被认为是不好的做法。
答案 6 :(得分:0)
尝试使用document.username
代替username
document
对象
答案 7 :(得分:0)
我假设您的jQuery包含在$(document).ready();
中 - 尝试在此外面声明vars,这将使它们在整个页面中全局:
var username, data;
$(document).ready(function() {
$.post("assets/scripts/chat/get_user_info.php", {UserID: UserID}, function(data){
if (data == "error") {
alertBar('negative','There was an error sending the message');
}
username = data;
})
});