有没有一种方法可以在不刷新页面的情况下,在一段时间后发布表单



我使用这个ajax脚本来保持页面上的所有信息,即使在按下提交之后

<!DOCTYPE html>
<html>
<head>
<title>AJAX POST Submit</title>

<script>
function ajaxpost () {
// (A) GET FORM DATA
var form = document.getElementById("myForm");
var data = new FormData(form);

// (B) AJAX
var xhr = new XMLHttpRequest();
xhr.open("POST", "0-dummy.php");
// What to do when server responds
xhr.onload = function () { console.log(this.response); };
xhr.send(data);

// (C) PREVENT HTML FORM SUBMIT
return false;
}
</script>
</head>
<body>
<form id="myForm" onsubmit="return ajaxpost()">
Name: <input type="text" name="name" required/>
Email: <input type="text" name="email" required/>
<input type="submit" id = "hello"value="Go!"/>
</form>
</body>

我基本上想更新表格并将其发布到";dummy.php";几分钟后,无需按下提交按钮并擦除页面上的数据。

<script>
//var div = document.getElementById('myForm');
//var submitted = document.getElementById('hello');

function CountDown(duration, display) {

var timer = duration, minutes, seconds;

var interVal=  setInterval(function () {
minutes = parseInt(timer / 60, 10);
seconds = parseInt(timer % 60, 10);

minutes = minutes < 10 ? "0" + minutes : minutes;
seconds = seconds < 10 ? "0" + seconds : seconds;
display.innerHTML ="<b>" + minutes + "m : " + seconds + "s" + "</b>";
if (timer > 0) {
--timer;
}else{
clearInterval(interVal)
document.getElementById('myForm').submit();
}

},1000);

}

function SubmitFunction(){
//submitted.innerHTML="Time is up!";

document.getElementById('myForm').submit();

}
//CountDown(5,div);

</script>
</html>

我之所以想要这种方式,是因为我正在尝试制作一个html页面,该页面使用php每隔几分钟将checkbox的值发布到一个文本文件中。复选框的值确定连接到从文本文件中收集所有数据的设备的电路。

所以你需要的只是避免你写的大部分内容,并坚持以下内容:

<!DOCTYPE html>
<html>
<head>
<title>AJAX POST Submit</title>

<script>
function ajaxpost () {
// (A) GET FORM DATA
var form = document.getElementById("myForm");
var data = new FormData(form);

// (B) AJAX
var xhr = new XMLHttpRequest();
xhr.open("POST", "help.php");
// What to do when server responds
xhr.onload = function () { console.log(this.response); };
xhr.send(data);

}
</script>
</head>
<body>
<form id="myForm" >
Name: <input type="text" name="name" required/>
Email: <input type="text" name="email" required/>
<input type="button" onclick="setInterval(ajaxpost,1000);" id = "hello"value="Go!"/>
</form>
</body>

这里的技巧首先将类型从CCD_ 2改变为CCD_。

第一次点击Go后会发生什么,它会保持每秒发送一次,并删除CCD_4

以下是我做的测试:

<?php
echo $_POST["name"]."". $_POST["email"];

我的hello.php只是:

PD_6希望这能回答问题。

相关内容

最新更新