当前位置:编程学习 > JS >>

求高人指点javascript,问题简单

<script type="text/javascript"> function TimeTo(dd){ var t = new Date(dd), n = new Date().getTime(), c = t - n; if(c<=0){ document.getElementById("timer").innerHTML ='作业已关闭'; clearInterval(window['ttt']); return; } var ds = 60*60*24*1000, d = parseInt(c/ds), h = parseInt((c-d*ds)/(3600*1000)), m = parseInt((c - d*ds - h*3600*1000)/(60*1000)), s = parseInt((c-d*ds-h*3600*1000-m*60*1000)/1000); document.getElementById("timer").innerHTML = d+'</b>天<b>'+h+'</b>小时<b>'+m+'</b>分<b>'+s+'</b>秒'; } (function(){ window['ttt']=setInterval(function(){ var v = document.getElementById("settime").value; TimeTo(v); },1000); })(); </script> <input name="settime" type="hidden" id="settime" value="<%=(rs("day")+rs("limit"))%>"/> <div id="timer" class="day">计算中…</div> 这段代码,在本机测试有效364天23小时28分5秒 ,上传服务器却显示的是NaN天NaN小时NaN分NaN秒 求指点,后台用的asp
追问:大神,我按照您的方法修改之后,在本地测试,已经不显示时间了?具体是怎么回事哦?他显示语法错误……是的,改成单引号会说语法错误辛苦你了,是这样的,我在本机测试是有效的,但是上传服务器就失效了,不知道原因,rs是可以读出正确的数据的,我都单独试过请问怎样取得呢?高人,虽然我很努力了,但是还是没能解决这个问题,是我知识欠缺,还请高人给个代码,劳烦。我是这么做的,但是没有效果
var v = document.getElementById("settime").value;
var w = document.getElementById("now").value;(now 里边的值是<%=now()%>)
TimeTo(v,w);

function TimeTo(dd,ee){
    var t = new Date(dd),
        n = new Date(ee),
答案:我看了看,你的代码有点乱,我改好了你复制就可用了,input一定要在javascript代码的上面。

<input name="settime" type="hidden" id="settime" value="<%= rs("day")+rs("limit") %>" />
<script type="text/javascript">
	if (document.images){ 
		parselimit=document.all.settime.value;//剩余总秒数
	} 
	function beginrefresh(){ 
		if (!document.images) 
			return;
		if (parselimit<1){
				document.getElementById("timer").innerHTML="<font color='#ff0000'>作业已关闭</font>";
		}
		else{ 
			parselimit-=1 
			curday=Math.floor(parselimit/60/60/24);
			curhour=Math.floor(parselimit/60/60);
			curmin=Math.floor(parselimit/60);
			curhour=curhour%24;
			curmin=curmin%60;
			cursec=parselimit%60; 
			//window.status=curtime;
			document.getElementById("timer").innerHTML="<b>"+curday+"</b>天<b>"+curhour+"</b>小时<b>"+curmin+"</b>分<b>"+cursec+"</b>秒";
			setTimeout("beginrefresh()",1000);
		} 
	} 
	window.onload=beginrefresh;
</script>
<div id="timer" class="day">计算中…</div>
其他:我不知道是不是这个错误,但是
n = new Date().getTime(),
应该是
n = (new Date()).getTime(),
而且
parseInt(c/ds),
最好这样写
parseInt(c/ds,10),
因为有时候它默认用了八进制或者十六进制 <input name="settime" type="hidden" id="settime" value="<%=(rs('day')+rs('limit'))%>"/>
没有获得值 
(上面这句话里面的单引号是我改过的) var t = new Date(dd),
取不到服务器的时间,在本地取得到当前时间
你写的JS取不到服务器时间 时间格式要转换的 

上一个:javascript split 字符串 转成数组,反着 来有没有一个方法?? 就是数组转成字符串
下一个:javascript怎样调用远程的php代码? 网页代码和php代码分别放在两台服务器上,怎么通过JS调用php?

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,