2016-08-04 5 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

私はあなたのsetTimeout()の最初のパラメータとして文字列を使用しshouln't信じています。

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の最初の引数の構文部分は、yesです。 コードの他の部分については言えませんが、そのようなコードが何をするのか(少なくともHTML部分はありません)、またあなたが何を詳細に達成しようとしているのか理解できませんでした。 – technico

0

ます。また、このような何かを試すことができます。

setTimeout(yourSubmitFunction, 3000) 

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

あなたが「ポスト****」の変数を持っているあなたの配列の各要素に対して同様に、ループ内でのsetTimeoutを呼び出すことができます。

+0

私の場合、ループでsetTimeoutを実行する方法は? –

関連する問題