我从PHP文件中获取数据,例如,存储使用该数据的变量。它存储在两个函数中:
$("#image1").on("click",function(){
$(".click").one("click",function(){
$.getJSON("getnew.php",function(data){
var img1 = data.img1;
然后我必须将它发布到另一个PHP文件,该文件只存储在第一个函数中。
$("#image1").on("click",function(){
// above stuff is first
$.post("update.php",
{img1link: img1}
但我无法访问img1变量,因为它在另一个函数中是本地的。
答案 0 :(得分:0)
您只需从var
声明中删除var img1 = data.img1;
。
如果使用var
,变量将在本地范围内声明。如果你只是在没有var
的情况下声明变量,它将在全局范围内声明
答案 1 :(得分:-1)
在任何编程语言中使用全局变量都不是一个好习惯。所以我建议你在进入ajax调用之前使用保存上下文。 喜欢 -
$("#image1").on("click",function(){
$(".click").one("click",function(){
$.getJSON("getnew.php",function(data){
var img1 = data.img1;
var self=this; // This is saving current context in self variable.
$.post("update.php",
{img1link: self.img1} //here you can access that variable using self.