Я создаю скрипт списка рассылки, который использует ajax (async = false) для отправки электронных писем в кусках.JavaScript для цикла делает пользовательский интерфейс невосприимчивым
В основном цикл это:
var i = 0;
for(i;i<num_rows;i=i+mxt){
if($("#panic").val()=='1'){
break;
}
perc = (i*100)/num_rows;
startThread(i,perc);
}
значение паники Tha устанавливается с помощью кнопки, проблема заключается в том, что во время цикла (который работает), я не могу взаимодействовать со страницей.
Что я делаю неправильно?
Спасибо
EDIT:
function startThread(i,perc){
l_a = i;
l_b = mxt;
headers = '&mail_from='+mail_from+'&mail_from_name='+mail_from_name+'&mail_subject='+mail_subject;
$.ajax({
type: "POST", url: "ajax/thread.php", data: "l_a="+l_a+"&l_b="+l_b+headers,
success: function(html){ $("#progressbar").progressbar({value: perc}); },
async: false
});
}
Звучит довольно нормально для меня. Сколько строк вы обрабатываете таким образом? –
Более 30 тыс. Всего, 100 рядов на нитку. Эта вещь работает как шарм, единственная проблема заключается в том, что мне хотелось бы остановить ее до того, как она закончится. – 0plus1
Можете ли вы предоставить код для 'startThread'? – GenericTypeTea