在ajax调用之外解析json文件后,数据不在控制台上打印

时间:2018-04-22 23:00:49

标签: javascript jquery json ajax

我无法在ajax调用之外的控制台上打印解析的json文件?我做错了什么?

function displayData(term) {                                                                                                                                  
   var frmStr =$('#input1').serialize(); 
   var result;                                                                                                            

   $.ajax({                                                                                                                                                  
        url:'./cgi_temp4_1.cgi',                                                                                                                          
        dataType:'json',                                                                                                                                  
        data: frmStr,                                                                                                                                     
        success: function(data, textStatus, jqXHR){                                                                                                       
            //alert(data)                                                                                                                                 
            result = $.parseJSON(JSON.stringify(data))                                                                                                    
        },                                                                                                                                                
        error: function(jqXHR, textStatus, errorThrown){                                                                                                  
            alert("Failed to perform search! textStatus: (" + textStatus +                                                                           
                  ") and errorThrown: (" + errorThrown + ")");                                                                                            
        }                                                                                                                                                 
    });                                                                                                                                                   

    //i get "undefined" message on the console                                                                                                                                                  
    console.log(result);

}

1 个答案:

答案 0 :(得分:2)

您正在发送异步请求,但尝试在结果准备好之前读取结果。

将console.log(结果)移动到第12行,作为成功回调中的最后一行。