我试图对此进行排序,我正在制作get类型的ajax请求,页面将返回许多响应,OK就是其中之一,页面返回OK然后我需要继续进行表单提交,否则我需要暂停表单提交,但我无法访问该功能的数据外,它单独在回退功能中可用,是否由于异步的习惯?,有人可以帮助我摆脱这个吗? / p>
$.get('ajax.html',function(data){
//some code here
});
if(data == 'ok'){return true; } else {return false;}
答案 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);
干杯!