0

ログインフォームをデザインしようとしていますが、次のように言ってみましょう:

<form action="target.php" method="POST">
Username: <input type="text" name="user" id="user" /><br /><br />
Password: <input type="password" name="pass" id="pass" /><br /><br />
<input type="submit" value="submit" id="submit" />
</from>

私がやろうとしているのは、ユーザーが送信を押したときにフォームにpic.gifを3秒間表示させてから続行することです。次のプロセスを直接開始したくありません。

4

3 に答える 3

3

最初に「display:none」スタイルの画像を用意し、フォーム宣言を「onsubmit」イベントを処理するように変更します。

<form action="target.php" method="POST" onsubmit = "mySubmit(this)">

次に、関数を定義します。

function mySubmit(frm) {
    document.getElementById("myImg").style.display = 'block';
    setTimeout(function() {frm.submit()}, 3000);
    return false;
}

画像が表示され、元の送信リクエストがキャンセルされます。しかし、3 秒後にコードからフォームが送信されます。

于 2013-09-13T19:55:10.590 に答える
1

setTimeout() 関数を使用できるようです。

<input type="submit" value="submit" id="submit" onclick="window.setTimeout(doStuffAfter, 30000)">

遅延後に func が呼び出されるようにして、好きな方法で呼び出します。そのため、画像を開いて、遅延が完了したら移動できます。

 window.setTimeout(func, delay, [param1, param2, ...]); 

https://developer.mozilla.org/en-US/docs/Web/API/window.setTimeout

于 2013-09-13T19:56:27.533 に答える