Ajax AutoUpdate по таймеру

shidlat

Добрый день, прошу подсказать в решение следующей задачи.В контроллере Admin Имеем метод который возвращает строку
public string Process()
{

}
Необходимо после нажатия на кнопку обращаться к методу и выводить результат в DIV пока метод не вернет 0.Пробую так:
<div <span>id</span><span>=</span><span>"MessageProgress"</span>>
Обработанно файлов: 0
<<span>/</span>div>
<input <span>type</span><span>=</span><span>"submit"</span> <span>value</span><span>=</span><span>"Обработать"</span> <span>class</span><span>=</span><span>"btGreen"</span> onc <span>lick</span><span>=</span><span>"StartLoad();"</span><span>/</span>>
кнопка запускает JScript,
function StartLoad()
 {
$.ajax("/Admin/Process", { success: SendRequest_Success, error: SendRequest_Error });
 
 }
 

 function SendRequest_Success(result)
 {
 while (result != "0") {
 
 $('#MessageProgress').text('Обработанно файлов: ' + result);
 setTimeout(StartLoad(), 1000);
 }
 }
Как догадались, это не работает, просьба подсказать в чем проблема.Спасибо.
1 ответ

shidlat

function SendRequest_Success(result)
 {
 // итерация отработала, но результат не устраивает
 if (result != "0") {
 $('#MessageProgress').text('Обработанно файлов: ' + result);

 // запускаем следующую итерацию
 StartLoad();
 }
 }
а while у тебя подвисает до бесконечности, вроде..+ onclick - слитно пишется+ если у тебя input type=submit используется ль отправки форму или только для вызова скрипта? если только для скрипта - нужно из StartLoad вернуть false: onclick='return StartLoad();'