1:用ajax 来做个时间倒计时,并每隔一分种提交一次。
var xmlHttpRequest;
var timer;
var saveTimer;
function createXMLHttpRequest() {//判断是否那种浏览器,并对不同浏览器进行创建xmlHttpRequest
try {
// Firefox, Opera 8.0+, Safari
xmlHttpRequest = new XMLHttpRequest();
} catch (e) {
// Internet Explorer
try {
xmlHttpRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
alert("您的浏览器不支持AJAX!");
return false;
}
}
}
}
//发送请求函数
function sendRequestPost(url, param) {
createXMLHttpRequest();
xmlHttpRequest.open("POST", url, true);
xmlHttpRequest.setRequestHeader("Content-Type",
"application/x-www-form-urlencoded");
xmlHttpRequest.send(param);
}
function saveData() {
var article = document.getElementById("article").value;//获取id为article的变量的值
var funcID = document.getElementById("funcID").value;//获取id为funcID的变量的值
var dataID = document.getElementById("dataID").value;//获取id为dataID的变量的值
var id = document.getElementById("id").value;//获取id为id的变量的值
var url = "STUDone.do";//指定URL
var param = encodeURIComponent("article") + "="
+ encodeURIComponent(article) + "&"
+ encodeURIComponent("funcID") + "="
+ encodeURIComponent(funcID) + "&"
+ encodeURIComponent("dataID") + "="
+ encodeURIComponent(dataID) + "&" + encodeURIComponent("ID")
+ "=" + encodeURIComponent(id);
sendRequestPost(url, param);
}
function timingProg() {
var ss, mm;
var temp;
temp = document.getElementById('cdTime').innerHTML;
mm = Number(temp.substring(0, temp.indexOf(":")));
ss = Number(temp.substring(temp.indexOf(":") + 1));
//时间到
if (ss == 0 && mm == 0) {
clearInterval(timer);
clearInterval(saveTimer);
//time out !!!
document.getElementById('stu03Form').submit();
return;
}
//时间在减少
if (ss == 0) {
ss = 60;
}
ss = ss - 1;
if (ss == 59) {
mm = mm - 1;
}
//转换回字符串,补0
mm = String(mm);
ss = String(ss);
if (mm.length <= 1) {
mm = '0' + mm;
}
if (ss.length <= 1) {
ss = '0' + ss;
}
//输出到html
document.getElementById('cdTime').innerHTML = mm + ':' + ss;
}
分享到:
相关推荐
6. **AJAX轮询**:每隔一段时间,通过AJAX向服务器查询剩余时间,这样即使页面刷新,也能根据服务器返回的数据恢复计时器。但这增加了服务器的负担,且可能会因网络延迟导致计时不准。 在实际开发中,通常会结合...
例如,我们可以设置一个定时器,每隔一段时间就包含一个新的JSP页面,这个被包含的页面负责计算并返回当前时间。 5. **响应与状态管理** 为了保持计时的连续性,JSP需要处理好每次请求的状态。这可能涉及使用`...
该压缩包文件“jquery实现的发送短信验证时间倒计时间隔表格表单特效源码.zip”包含了一个基于jQuery实现的特定功能,即短信验证码发送后的倒计时效果。这个功能在许多网站的注册、登录或找回密码等流程中非常常见,...
倒计时功能可以通过`setInterval`函数实现,每隔一段时间更新页面上的倒计时显示,直到计时结束。例如: ```javascript var countdown = 5; // 假设倒计时5秒 var intervalId = setInterval(function() { ...
这段代码用于创建一个倒计时计时器,其主要功能是在指定的考试时间结束后给出提醒。关键部分如下: ```javascript var maxtime; if (window.name == '' || window.name == '-1' || isNaN(window.name)) { maxtime ...
本文主要介绍了如何使用jQuery实现一个倒数计时按钮的功能,通过setTimeout函数的递归调用实现倒数计时效果,并且在按钮倒计时结束后禁用按钮。以下是对给定文件内容中知识点的详细说明: 知识点一:jQuery简介 ...
在给定的代码示例中,它演示了一个简单的计时器功能,显示从指定时间点到现在已经过去了多少天、小时、分钟和秒。以下是详细的知识点解析: 1. **Date对象**: JavaScript的`Date`对象用于处理日期和时间。在`var ...
这段代码在文档加载完成后开始执行,通过`setInterval`函数每隔500毫秒增加进度5%,直到达到100%。`css`方法用于动态更新进度条的宽度。 在实际应用中,进度条通常与Ajax请求或计时器结合,以反映后台任务的完成...
例如,我们可以创建一个计时器,每隔一段时间自动刷新部分内容,或者实现图片轮播效果。 JavaScript还支持异步编程,通过回调函数、Promise和async/await,解决复杂的非阻塞I/O操作。这在处理网络请求、加载资源等...
在本文中,我们将探讨如何使用jQuery和PHP技术来创建一个滚动的数字特效,这通常用于显示动态变化的数据,如访问次数、下载次数等。我们将通过一个具体的实例来讲解这一过程,即实时显示产品的下载次数。 首先,...