Javascript Jquery Ajax成功后停止加载
我使用jquery脚本从PHP文件中检索一些数据。问题是当检索到所有数据时,脚本没有停止执行 我使用console.log进行检查,我得到了1000个未定义的值,但仍然会增加到无穷大(9999999999+未定义),我想,如何停止Javascript Jquery Ajax成功后停止加载,javascript,jquery,ajax,undefined,Javascript,Jquery,Ajax,Undefined,我使用jquery脚本从PHP文件中检索一些数据。问题是当检索到所有数据时,脚本没有停止执行 我使用console.log进行检查,我得到了1000个未定义的值,但仍然会增加到无穷大(9999999999+未定义),我想,如何停止 id = 0; function do_ajax() { id++; var url = $("#link_" + id).find("a").attr("href"); console.log(url);
id = 0;
function do_ajax() {
id++;
var url = $("#link_" + id).find("a").attr("href");
console.log(url);
$.ajax({
type: "POST",
data : {"url" : url},
url : "analyzer/checkbroken.php",
success: function(data){
if(data == "200")
{
$("#status_" + id).html(\'<i class="fa fa-check"></i>\');
} else {
$("#status_" + id).html(\'<i class="fa fa-times"></i>\');
$(".linka_" + id).addClass("brokenlink");
}
do_ajax();
}
});
};
do_ajax();
id=0;
函数do_ajax(){
id++;
var url=$(“#link"+id).find(“a”).attr(“href”);
console.log(url);
$.ajax({
类型:“POST”,
数据:{“url”:url},
url:“analyzer/checkbreak.php”,
成功:功能(数据){
如果(数据=“200”)
{
$(“#status”+id).html(\'\');
}否则{
$(“#status”+id).html(\'\');
$(.linka_u3;+id).addClass(“断线链接”);
}
dou_ajax();
}
});
};
dou_ajax();
删除ajax调用成功函数中的do\u ajax()
调用函数。这导致了infinte循环。您正在递归调用函数do\u ajax()
,因此代码可以无限运行。
您可以尝试设置一个if条件来停止
i
的增量,如果我删除了,则脚本将只获取第一个数据,而不是全部数据。如果有N个html标记的ID为模式“link\u NUMBER”,则表示该请求将被调用N次。你想干什么?标页码我想你可以想出一个更好的解决办法。它的性能很差。另外,我可以看到您没有对服务器发送的数据做任何处理(以防服务器发回某些内容)。我有一个固定的表,带有固定链接,我需要验证每个表是否损坏,并显示fa图标是否有效。脚本正在运行。但我认为无限循环是不好的,我没有看到循环结束的条件。您应该检查var url=$(“#link"+id).find(“a”).attr(“href”)标记是否存在,如果不存在,则表示算法已经结束,因此您不需要再进行ajax调用。我说的对吗?你希望它什么时候停止?我尝试了这个,但仍然是一样的:if(url!==null | | url!==undefined){