如何在ajax调用之外检索变量值?

时间:2014-08-29 07:10:54

标签: ajax variables

我有一个ajax函数调用,其变量sum值为5.但是当我尝试在ajax函数调用之外访问此变量时,我得到null值。 有没有办法访问ajax函数之外的值?

         $.ajax({
           type: "POST",
           url: "Service.asmx/chart",
           data: appid,
           success: function(data) {
           var mydata = 5;    
                }
            });
           alert(mydata);

2 个答案:

答案 0 :(得分:0)

试试这个:

    $.ajax({
       type: "POST",
       url: "Service.asmx/chart",
       data: appid,
       success: function(data) {
       doGetMyData(data);
            }
        });
       function doGetMyData(data){
       alert(data);

}

答案 1 :(得分:0)

第一个" A"在AJAX中意味着异步,因此您的代码在请求完成之前运行警报。要实现您想要的目标,您可以尝试使请求同步,为查询添加async:false选项:

$.ajax({
   type: "POST",
   url: "Service.asmx/chart",
   data: appid,
   async:false,
   success: function(data) {
   doGetMyData(data);
        }
    });
   function doGetMyData(data){
      alert(data);
   }

坏消息是同步请求会锁定您的浏览器,直到它完成,这是一个很好的实践,以避免这种情况。