私はajax投稿要求を1つずつ実行しようとしており、その結果が "done"のようなものである場合にのみ停止します。しかし、私はそれがループしていない理由を理解できません...私はjsonの答えを得るが、私は成功の応答で何もすることはできません。 これまでの私のコード:あなたの助けを事前にAjaxクエリを1つ1つJqueryで実行する
var index = 0;
function crawler(textarea) {
index = 0;
if(url != ''){
if(/^(http|https|ftp):\/\/[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5}(:[0-9]{1,5})?(\/.*)?$/i.test(url)){
execute_queue(index);
}
}
};
function execute_queue(index)
{
url = strip_tags($('#input-website').val().trim());
folders = strip_tags($('#excluded-folders').val().trim());
$.ajax({
url: 'xxx',
cache: false,
type : 'POST',
async: false,
data: {url:url, folders:folders, current:index},
success: function(response)
{
index++;
execute_queue(index);
}
});
};
感謝。
を '非同期を削除してください。それは本当に悪い習慣です。コンソールにエラーがありますか? –
「返信」が返すものを確認しましたか? –
リクエストの配列を作成し、AJAXリクエストを実行する関数を作成し、結果が返されたら、次の配列アイテムリクエストを実行し、必要なものが得られるまでこれを行います。 –