关于时间有效期 一个订单有个有效期40分钟 入库的时候开始读 用户可以查看订单 在页面上会显示最新的时间 比如入库过去5分钟40秒 然后查询出这个订单 会有一个时间在读 剩34分20秒 等到入库后40分钟后状态会变为失效 这个要怎么实现啊 求高手 大虾指教啊 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 setInterval() 可以完成这个需求 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>无标题文档</title><script type="text/javascript"> function Produce(name,time){ this.name=name; this.time=time*60; this.div=document.createElement("div"); document.body.appendChild(this.div); this.inter=""; this.add(); } Produce.prototype.add=function(){ this.time-=0.5; this.div.innerHTML=this.name+":"+this.time; this.inter=window.setTimeout(this.add.bind(this),1000); if(this.time<=0){ window.clearTimeout(this.inter); this.div.innerHTML=this.name+":"+"已过期"; } } function move(){ var name=document.getElementById("name").value; var time=document.getElementById("time").value; new Produce(name,time).add(); }</script></head><body><input type="text" value="name" id="name"><input type="text" value="time" id="time"><input type="button" onclick="move()" value="增加商品"></body></html>这样? 入库的时候你记录入库的时间,然后加上你的过期时间在页面上弄一个倒计时方法,例订单12:00入库,当到了12:40的时候就去更改状态,给你看个小例子<script language="javascript" type="text/javascript"> //要倒计时的时间格式为 new Date(年-2012, 月-05(月份比实际月小1个月), 日-16, 小时-09, 分钟-00, 秒-00) var target = new Date(2012, 05, 14,12, 40, 00).getTime(); function show_date_time() { setTimeout("show_date_time()", 1000); today = new Date(); timeold = target - today.getTime(); sectimeold = timeold / 1000; secondsold = Math.floor(sectimeold); msPerDay = 24 * 60 * 60 * 1000; e_daysold = timeold / msPerDay; daysold = Math.floor(e_daysold); e_hrsold = (e_daysold - daysold) * 24; hrsold = Math.floor(e_hrsold); e_minsold = (e_hrsold - hrsold) * 60; minsold = Math.floor((e_hrsold - hrsold) * 60); seconds = Math.floor((e_minsold - minsold) * 60); if (daysold < 0) { 当时间到了更改状态然后退出 return null; } else { if (daysold < 10) { daysold =daysold } if (daysold < 100) { daysold =daysold } if (hrsold < 10) { hrsold = "0" + hrsold } if (minsold < 10) { minsold = "0" + minsold } if (seconds < 10) { seconds = "0" + seconds } document.getElementById("times").innerHTML = "<em> " + daysold + "</em>天 <em>" + hrsold + "</em>小时 <em>" + minsold + "</em>分 <em>" + seconds + "</em>秒"; } } setTimeout("show_date_time()", 100); </script> html代码 <span id="times"></span> 那就应该是倒计时代码了,给你参考一下:<form name="form1"> <div align="center" align="center"> <center>离2010年还有:<br> <input type="textarea" name="left" size="35" style="text-align: center"> </center> </div> </form> <script LANGUAGE="javascript"> startclock() var timerID = null; var timerRunning = false; function showtime() { Today = new Date(); var NowHour = Today.getHours(); var NowMinute = Today.getMinutes(); var NowMonth = Today.getMonth(); var NowDate = Today.getDate(); var NowYear = Today.getYear(); var NowSecond = Today.getSeconds(); if (NowYear <2000) NowYear=1900+NowYear; Today = null; Hourleft = 23 - NowHour Minuteleft = 59 - NowMinute Secondleft = 59 - NowSecond Yearleft = 2009 - NowYear Monthleft = 12 - NowMonth - 1 Dateleft = 31 - NowDate if (Secondleft<0) { Secondleft=60+Secondleft; Minuteleft=Minuteleft-1; } if (Minuteleft<0) { Minuteleft=60+Minuteleft; Hourleft=Hourleft-1; } if (Hourleft<0) { Hourleft=24+Hourleft; Dateleft=Dateleft-1; } if (Dateleft<0) { Dateleft=31+Dateleft; Monthleft=Monthleft-1; } if (Monthleft<0) { Monthleft=12+Monthleft; Yearleft=Yearleft-1; } Temp=Yearleft+'年, '+Monthleft+'月, '+Dateleft+'天, '+Hourleft+'小时, '+Minuteleft+'分, '+Secondleft+'秒' document.form1.left.value=Temp; timerID = setTimeout("showtime()",1000); timerRunning = true; } var timerID = null; var timerRunning = false; function stopclock () { if(timerRunning) clearTimeout(timerID); timerRunning = false; } function startclock () { stopclock(); showtime(); } // --> </script> 如何往这个函数中存值?在线等 在线考试,提交后改变字体颜色和禁用checkBox js 用什么方法获取数字??? 关于右侧悬浮在线客服收缩弹出的效果 如何在用户登录后,把窗口变成全屏的 用js怎么实现动态添加修改删除功能 在线急等!!!关于location.href="index.jsp";target="_parent";怎么不对。 如何比较两个自符的大小? JSP计时器 js 执行一个耗时操作时,比如一个大的遍历,如何才能真正实现异步,让浏览器界面不会假死。 请教:canvas的画图问题 请教一个在点击回复,插入回复框的问题
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript">
function Produce(name,time){
this.name=name;
this.time=time*60;
this.div=document.createElement("div");
document.body.appendChild(this.div);
this.inter="";
this.add();
}
Produce.prototype.add=function(){
this.time-=0.5;
this.div.innerHTML=this.name+":"+this.time;
this.inter=window.setTimeout(this.add.bind(this),1000);
if(this.time<=0){
window.clearTimeout(this.inter);
this.div.innerHTML=this.name+":"+"已过期";
}
}
function move(){
var name=document.getElementById("name").value;
var time=document.getElementById("time").value;
new Produce(name,time).add();
}
</script>
</head><body>
<input type="text" value="name" id="name">
<input type="text" value="time" id="time">
<input type="button" onclick="move()" value="增加商品">
</body>
</html>
这样?
给你看个小例子
<script language="javascript" type="text/javascript">
//要倒计时的时间格式为 new Date(年-2012, 月-05(月份比实际月小1个月), 日-16, 小时-09, 分钟-00, 秒-00)
var target = new Date(2012, 05, 14,12, 40, 00).getTime();
function show_date_time() {
setTimeout("show_date_time()", 1000);
today = new Date();
timeold = target - today.getTime();
sectimeold = timeold / 1000;
secondsold = Math.floor(sectimeold);
msPerDay = 24 * 60 * 60 * 1000;
e_daysold = timeold / msPerDay;
daysold = Math.floor(e_daysold);
e_hrsold = (e_daysold - daysold) * 24;
hrsold = Math.floor(e_hrsold);
e_minsold = (e_hrsold - hrsold) * 60;
minsold = Math.floor((e_hrsold - hrsold) * 60);
seconds = Math.floor((e_minsold - minsold) * 60);
if (daysold < 0) {
当时间到了更改状态然后退出
return null;
}
else {
if (daysold < 10) { daysold =daysold }
if (daysold < 100) { daysold =daysold }
if (hrsold < 10) { hrsold = "0" + hrsold }
if (minsold < 10) { minsold = "0" + minsold }
if (seconds < 10) { seconds = "0" + seconds }
document.getElementById("times").innerHTML = "<em> " + daysold + "</em>天 <em>" + hrsold + "</em>小时 <em>" + minsold + "</em>分 <em>" + seconds + "</em>秒";
}
}
setTimeout("show_date_time()", 100);
</script>
html代码 <span id="times"></span>
<form name="form1">
<div align="center" align="center">
<center>离2010年还有:<br>
<input type="textarea" name="left" size="35" style="text-align: center">
</center>
</div>
</form>
<script LANGUAGE="javascript">
startclock()
var timerID = null;
var timerRunning = false;
function showtime() {
Today = new Date();
var NowHour = Today.getHours();
var NowMinute = Today.getMinutes();
var NowMonth = Today.getMonth();
var NowDate = Today.getDate();
var NowYear = Today.getYear();
var NowSecond = Today.getSeconds();
if (NowYear <2000)
NowYear=1900+NowYear;
Today = null;
Hourleft = 23 - NowHour
Minuteleft = 59 - NowMinute
Secondleft = 59 - NowSecond
Yearleft = 2009 - NowYear
Monthleft = 12 - NowMonth - 1
Dateleft = 31 - NowDate
if (Secondleft<0)
{
Secondleft=60+Secondleft;
Minuteleft=Minuteleft-1;
}
if (Minuteleft<0)
{
Minuteleft=60+Minuteleft;
Hourleft=Hourleft-1;
}
if (Hourleft<0)
{
Hourleft=24+Hourleft;
Dateleft=Dateleft-1;
}
if (Dateleft<0)
{
Dateleft=31+Dateleft;
Monthleft=Monthleft-1;
}
if (Monthleft<0)
{
Monthleft=12+Monthleft;
Yearleft=Yearleft-1;
}
Temp=Yearleft+'年, '+Monthleft+'月, '+Dateleft+'天, '+Hourleft+'小时, '+Minuteleft+'分, '+Secondleft+'秒'
document.form1.left.value=Temp;
timerID = setTimeout("showtime()",1000);
timerRunning = true;
}
var timerID = null;
var timerRunning = false;
function stopclock () {
if(timerRunning)
clearTimeout(timerID);
timerRunning = false;
}
function startclock () {
stopclock();
showtime();
}
// -->
</script>