Voici ma fonction 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;
})
Mais je n'utilise que la variable "data" ou "username" dans la fonction elle-même, alors comment puis-je l'utiliser globalement sur toute la page?
Réponses:
5 pour la réponse № 1Définissez la variable dans la portée globale, en dehors de votre fonction.
var username, data;
$.post("assets/scripts . . .
2 pour la réponse № 2
Non plus
window.data = data
ou
username = data
La chose est cependant, le $.post
est asynchrone, donc vous ne pourrez pas faire quelque chose comme ...
$.post( ... )
alert(window.data);
1 pour la réponse № 3
Essayer
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;
})
1 pour la réponse № 4
Ce que tu peux faire c'est
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;
})
Maintenant vous pouvez accéder myglobaldata.username
de partout.
0 pour la réponse № 5
Vous pouvez l'enregistrer en tant que données en utilisant .Les données():
$.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);
}
});
Ensuite, vous pouvez y accéder en faisant:
var userInfo = $(document).data("userInfo");
0 pour la réponse № 6
window.username = data
En fera une variable globale. Bien que cela soit souvent considéré comme une mauvaise pratique.
0 pour la réponse № 7
Je suppose que votre jQuery est enveloppé dans $(document).ready();
- essayez de déclarer les vars à l'extérieur comme ceci, ce qui les rendra globaux tout au long de la page:
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;
})
});
0 pour la réponse № 8
Essayer document.username
au lieu de username
document
l'objet est visible de partout