使用ajax 来做个时间倒计时,并每隔一段时间提交一次到后台

本文介绍了一个利用Ajax技术实现网页上的定时任务功能,包括每分钟向服务器提交数据以及显示剩余时间的倒计时效果。通过JavaScript代码详细展示了如何创建XMLHttpRequest对象来兼容不同的浏览器,并说明了如何组织POST请求参数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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;

 }

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值