gpt4 book ai didi

javascript - 显示递归请求的进度

转载 作者:行者123 更新时间:2023-12-03 01:46:16 26 4
gpt4 key购买 nike

我有递归 js 脚本,它发送 GET 请求,php 脚本一次更新 100 行 xml 数据。但我的问题是运行脚本时未显示进度。我不明白错误在哪里或者如何修复它

    $(document).ready(function(){
function ProcessClear(start_position){

$.ajax({
type:"GET",
async:false, // set async false to wait for previous response; true for async
url: "checkUrl.php?start=y&start_position="+start_position,
dataType:"html",
success: function(data){
if( data == "done" ){
$('.at_test_red span').html( "end" );
}else{
$('.at_test_red span').html( data );


ProcessClear( data );
}
}
});

}

ProcessClear(1);
});

在这一行$('.at_test_red span').html( data );应该是可见的进度,但它不起作用

最佳答案

async : false 导致此问题。因为脚本将在单线程上运行。它应该是true

async:false, // set async false to wait for previous response; true for async

为了达到上述目的,您应该在收到前一个请求的响应时递归调用ProcessClear函数。即在 ajax 调用的 completesuccess 中。

   $(document).ready(function(){
function ProcessClear(start_position){

$.ajax({
type:"GET",
async: true, //true is default
url: "checkUrl.php?start=y&start_position="+start_position,
dataType:"html",
success: function(data){
if( data == "done" ){
$('.at_test_red span').html( "end" );
}else{
$('.at_test_red span').html( data );


ProcessClear( data ); //<-- This will call only on getting response from previous request.
}
}
});

}

ProcessClear(1);
});

关于javascript - 显示递归请求的进度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50624583/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com