私のスクリプトではちょっと固まっています。私はjQueryとAJAXを使って自分のページを検索しています。この例では、私はキーワードの2つのサイトで検索すると、私は、私が何かを発見したときAJAXループを壊したい:私はここでループを切断する方法がわからないjQueryコールバック付きAJAX要求の中断ループ
var urls = [
'http://docs.db-dzine.com/woocommerce-advanced-categories/',
'http://docs.db-dzine.com/woocommerce-catalog-mode/',
];
var found = false;
$.each(urls, function(i, url) {
ajaxSearchPage(url, keyword, function(found) {
console.log(found);
if(found) {
return true;
}
});
if(found) {
return true;
}
});
を...助けてください。
そして、私のAJAX機能:
var ajaxSearchPage = function(url, keyword, callback) {
$.ajax({
url: url,
type: "GET",
dataType: "html",
success: function(response) {
// Do not load images
var page = response.replace(/<img/gi, '<noload');
// Create parsable body for jQuery
var body = $('<div id="body-mock">' + page.replace(/^[\s\S]*<body.*?>|<\/body>[\s\S]*$/ig, '') + '</div>');
// Find the keyword in content
var content = body.find('#content:containsNC("'+ keyword +'")');
if(content.length > 0) {
searchResultsWrapper.show();
callback(true);
} else {
callback(false);
}
}
});
};
'break;'を使用してください。ここに素敵な記事https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/breakとこれがhttp://stackoverflow.com/questions/183161/best-way-to-ネストされたループからブレークする – Pugazh
'$ .each'ループを解除するには、ループコールバックで' false'を返す必要があります。 –
私は今日も同様の[質問はこちら](http://stackoverflow.com/a/39037589/1267304)に答えました。私がそこでやったようにすることができますし、いつでも*ループ*を終了することができます。 – DontVoteMeDown