新手在这里。我有一个Ajax函数循环3个不同的请求。但是,如果第一个请求失败,我希望其他请求终止。我尝试输入'break'语句,但得到了一个'非法中断语句'错误,我猜是因为它不是直接在for循环中,而是两层下来。我可以想到一些解决这个问题的混乱方法,但我想知道一个好的,简单的解决方案是什么......
function runQueries(request) {
var reports = ['103, 187, 190'];
for (i=0; i < reports.length; i++) {
report = reports[i];
$.ajax({
url: 'proxy.php',
data: {requrl: request + '&reportType=' + report},
dataType: 'xml'
})
.done(function(response) {
if ($(response).find('Locations').children('Location').length < 1) {
displayError(response, report);
break;
}
答案 0 :(得分:2)
使用
而不是break
使用i =reports.length+1;
$.ajax({
url: 'proxy.php',
data: {requrl: request + '&reportType=' + report},
dataType: 'xml'
})
.fail(function() {
i =reports.length+1;
}