0
私はこの小さなプログラムを作ったが、5秒待っても値は送られない。私が5秒以内に答えると、送信ボタンを押すと正常に動作します。私はこのようなアプリケーションを作るためにAJAXとJSONを学ぶべきでしょうか?値を持つjavascriptでフォームを投稿する方法
<!DOCTYPE html>
<html>
<style>
#myProgress {
position: relative;
width: 100%;
height: 10px;
background-color: #ddd;
}
#myBar {
position: absolute;
width: 0%;
height: 100%;
background-color: #F76B4C;
}
</style>
<body>
<?php
if(isset($_POST['Submit'])){
$achternaam = $_POST['lname'];
echo "De winnaar is: " .$achternaam;}
?>
<p>Vul snel iets in!</p>
<div id="myProgress">
<div id="myBar"></div>
</div>
<br>
<br>
<form method="post" id="myForm" action="post">
Last name: <input type="text" name="lname"><br><br>
<input type="submit" name="Submit" value="Submit">
</form>
<script>
function move() {
var elem = document.getElementById("myBar");
var width = 100;
var id = setInterval(frame, 50);
function frame() {
if (width <= 0) {
clearInterval(id);
document.forms["myForm"].submit();
} else {
width--;
elem.style.width = width + '%';
}
}
}
move()
</script>
</body>
</html>
お返事ありがとうございました。
まず、HTML5ではフォームに空ではない 'action'を含める必要があります(この場合は' action = "post"を使用します)。第二に、あなたはAJAXやJSONを使う必要はありませんが、とにかくそれらを学ぶ必要があります。それは有益なスキルです。第3に、あなたのPHPを本体に移動するか、表示されません。これらはあなたの質問に直接関係していませんが、私はそれらをとにかく指摘したいと思いました。 –
私は変更を加えました。 – Martijn
本当にAjaxとJsonは必要ありません。ブール値を作成して5秒後にfalseにするだけで、これを行うことができます。値がtrueの場合、フォームはサブミットされません。 –