簡體   English   中英

在函數外部訪問局部變量?

[英]Accessing a local variable outside a function?

我從一個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變量,因為它在其他函數中是本地的。

您所要做的就是從var img1 = data.img1;刪除var var img1 = data.img1; 宣言。

如果使用var則變量將在本地范圍內聲明。 如果u僅聲明不帶var的變量,它將在全局范圍內聲明

在任何編程語言中使用全局變量都不是一個好習慣。 因此,我建議您在進入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.

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM