从$ .get方法返回数据

时间:2014-04-23 05:45:45

标签: javascript jquery html ajax

我试图对此进行排序,我正在制作get类型的ajax请求,页面将返回许多响应,OK就是其中之一,页面返回OK然后我需要继续进行表单提交,否则我需要暂停表单提交,但我无法访问该功能的数据外,它单独在回退功能中可用,是否由于异步的习惯?,有人可以帮助我摆脱这个吗? / p>

 $.get('ajax.html',function(data){
//some code here
});

if(data == 'ok'){return true; } else {return false;}

2 个答案:

答案 0 :(得分:0)

$.get触发异步请求,并继续执行您的程序。因此,在您的情况下,data仅在ajax调用完成后才可用,并且仅在您的回调函数内。您需要在回调函数中对data执行任何操作。

您需要重新安排代码以执行以下操作:

$.get('ajax.html', function (data) {
   if(data === 'OK') {
      // do what you need to do in this case
   }
});

// at this point there's no data

答案 1 :(得分:-1)

不,您正在访问不是可用变量的数据。 把它分配给另一个变量怎么样?

var resp = "";
 get('ajax.html', function (data) {
   resp = data;
});

if(resp == "OK") {alert(1);}

或者你可以使用asyn false

$.ajax({
    url: url,
    type: "GET",
    async: false,
    data: data,
    success: function(ret) {
        //alert(ret);
        resp = data;
    }
});
alert(resp);

干杯!