忘了

    技术2022-05-19  26

    var timeResult = Date.parse("<{$smarty.now|date_format:"%m/%d/%Y %T"}>") + 1000; //乱码,不好用,我给改了,用new date()获取数据 //var timeResult = Date.parse(new Date()) + 1000; function GetTime() { var datetime = new Date(timeResult); timeResult = timeResult + 1000; var strDate = datetime.getFullYear() + "-" + ((datetime.getMonth()+1)<10?"0":"") + (datetime.getMonth()+1) + "-" + (datetime.getDate()<10?"0":"") + datetime.getDate(); var strTime = (datetime.getHours()<10?"0":"") + datetime.getHours() + ":" + (datetime.getMinutes()<10?"0":"") + datetime.getMinutes() + ":" + (datetime.getSeconds()<10?"0":"") + datetime.getSeconds(); document.getElementById("Time").innerHTML = strDate + " " + strTime + " "; } function Show() { window.setInterval("GetTime()",1000); }

     

    Date.parse(dateVal)

      这个方法是很常用的,比如在验证输入日期是否存在时,可以使用它,如果是一个不存在的日期,则其返回值将是NaN,另外如果要比较两个日期的先后,或是计算两个日期相差的天数 ,都可以用到。

      今天在使用它比较日期先后的时候遇到了一个奇怪的问题,是关于日期格式的,parse方法要求短日期可以使用“/”或“-”作为分隔符,但 是必须用月/日/年的格式来表示,例如今天是“7/6/2008”或是“7-6-2008”,问题就出现在这里,当使用“7-6-2008”这种格式时, 在 IE中可以正常解析,但在FireFox中,返回值却总是NaN。一开始以为是代码出现问题,检查以后才发现是浏览器的原因,后来将格式改为“7/6 /2008”后在IE和FF中都可以正常解析了。

     

     


    最新回复(0)