2016-08-04 4 views
-5

Почему setTimeout не работает? И как это сделать правильно? Мне нужно получить 30-секундную задержку. Извините за вопрос о новичке, но я новичок.JS setTimeout stack

\t if (event.target.id.indexOf('submit') === 0) 
 
{ post1000.submit(); setTimeout('post1001.submit();', 30000); } 
 
{ post1001.submit(); setTimeout('post1002.submit();', 60000); } 
 
... 
 
{ post5092.submit(); setTimeout('post5093.submit();', 122790000); } 
 

 
}, false);

+0

и как это сделать правильно? Мне нужно получить 30-секундную задержку на каждый подарок. –

+0

вы пытаетесь установить тайм-аут для отправки функции? У вашего кода уже есть синтаксическая ошибка, пожалуйста, объясните свою цель. –

+0

Пожалуйста, покажите реальный, действительный код. То, что вы сейчас показываете, не имеет смысла. Это похоже на то, что вы выполняете 5000 подачек, а затем устанавливаете кучу таймеров и задаетесь вопросом, почему все 5000 отправлений просто пошли. Кроме того, ваш оператор 'if' выглядит так, как будто он выровнен только с первым представлением на основе привязки. Пожалуйста, покажите реальный код. – jfriend00

ответ

0

Я считаю, что вы shouln't использовать строку в качестве первого параметра для SetTimeout(); Вот это определение функции:

setTimeout(function,milliseconds,param1,param2,...) 

Попробуйте с этим пример кода, или обновить ваше соответственно:

setTimeout(function(){ alert("Hello"); }, 3000); 
+1

Это не главная проблема. При передаче строки в 'setTimeout()' немного анти-шаблон, он работает во многих случаях. – jfriend00

+0

Нравится? setTimeout (post1000.submit() {alert ("Hello");}, 3000); setTimeout (post1001.submit() {alert ("Hello");}, 6000); setTimeout (post1002.submit() {alert ("Hello");}, 9000); ... setTimeout (post5000.submit() {alert ("Hello");}, 12000); –

+0

Для синтаксической части первого аргумента setTiemout да. Не могу сказать о других частях вашего кода, так как я не понял, что будет делать этот код (без части HTML), а также то, что вы пытаетесь достичь в деталях. – technico

0

Вы также можете попробовать что-то вроде этого;

setTimeout(yourSubmitFunction, 3000) 

function yourSubmitFunction() { 
    //do whatever you want to do you can define submit here 
} 

Вы можете вызвать setTimeout в цикле, как и для каждого элемента в вашем массиве с вашими переменными «post ****».

+0

как сделать setTimeout в цикле в моем случае? –

Смежные вопросы