我希望将服务器时间和日期设置为新日期 我试过这个:
dateNow = new Date("<%=now()%>");
但这不起作用 我怎么能这样做?
这是给我问题的代码...... 它只是在时间差异上得到堆栈而不是倒计时
<script type="text/javascript">
dateFuture = new Date(<%=year(privatesellstartdate)%>,<%=month(privatesellstartdate)-1%>,<%=day(privatesellstartdate)%>,<%=hour(privatesellstarttime)%>,<%=minute(privatesellstarttime)%>,00);
function GetCount(){
dateNow = new Date(<%=year(date())%>,<%=month(date())-1%>,<%=day(date())%>,<%=hour(time())%>,<%=minute(time())%>,00); //grab current date
amount = dateFuture.getTime() - dateNow.getTime(); //calc milliseconds between dates
delete dateNow;
// time is already past
if(amount < 0){
document.getElementById('countbox').innerHTML="Now!";
}
// date is still good
else{
days=0;hours=0;mins=0;secs=0;out="";
amount = Math.floor(amount/1000);//kill the "milliseconds" so just secs
days=Math.floor(amount/86400);//days
amount=amount%86400;
hours=Math.floor(amount/3600);//hours
amount=amount%3600;
mins=Math.floor(amount/60);//minutes
amount=amount%60;
secs=Math.floor(amount);//seconds
if(days != 0){out += days +":";}
if(days != 0 || hours != 0){out += hours +":";}
if(days != 0 || hours != 0 || mins != 0){out += mins +":";}
out += ((secs>=10)?secs:"0"+secs) ;
document.getElementById('countbox').innerHTML=out;
setTimeout("GetCount()", 1000);
}
}
window.onload=GetCount;//call when everything has loaded
</script>
答案 0 :(得分:1)
VBScript的Now
返回日期和时间,如:
5/27/2010 6:06:39 PM
JavaScript的Date()构造函数不喜欢该特定格式。从字符串中随时间实例化JavaScript日期需要时间为24h格式。看起来你正试图在你粘贴的代码中正确拼凑它。不知道为什么不起作用。
我的问题是为什么在客户端进行日期比较呢? VBScript's DateDiff会在服务器端为您处理这个问题:
var seconds = <%= DateDiff("s", Now, privatesellstartdate) %>;
if (seconds > 0) {
var days = <%= DateDiff("d", Now, privatesellstartdate) %>;
var hours = <%= DateDiff("h", Now, privatesellstartdate) %>;
var minutes = <%= DateDiff("n", Now, privatesellstartdate) %>;
// Your logic here.
}
答案 1 :(得分:0)
我不使用ASP但是查看http://www.w3schools.com/js/js_obj_date.asp JavaScript需要特定格式的日期。检查那里的样本,您应该能够以正确的格式在ASP中检索日期。
答案 2 :(得分:0)
请注意,或者我应该说注意,因为您的服务器和与之联系的网络浏览器可能位于不同的时区。因此,当您在服务器上创建日期字符串并设置一些Javascript以使用相同的字符串创建客户端日期时,实际日期/时间将意味着不同的东西到服务器和客户端。也许这就是你想要的,也许不是;这取决于应用程序。
我猜这不是一个真正的答案; @Alistair是正确的,因为本机Javascript Date对象的语法非常有限。我并不是要向你推一个框架,但你可能会看一下“datejs”库(http://www.datejs.com/),看看如果你用日期/时间值做很多事情,它是否会有所帮助。