将日期从asp传递给javascript函数

时间:2012-02-20 16:49:12

标签: javascript asp-classic vbscript

我正在从ASP vbscript中的数据库中检索日期,并希望将其传递给javascript函数(并以日期格式使用它)。

我尝试将我的日期转换为ASP中的CDate,将其传递给我的javascript函数并使用Date(ASPDate)制作一个javascript。这样做时,我总是在参数列表之后得到错误“缺失”,因为当天和时间之间有空格。

相关代码:

CreateTimeStart(" & dteActualStartTime & ")

function CreateTimeStart(dteActualStartTime){
    timestart = Date(dteActualStartTime);
}   

2 个答案:

答案 0 :(得分:1)

使用Date.parse方法:

CreateTimeStart('<%= dteActualStartTime %>');

function CreateTimeStart(dteActualStartTime){
    var timestart = Date.parse(dteActualStartTime);
}

https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date/parse

答案 1 :(得分:0)

您无法知道客户端计算机上的日期设置,因此您不能依赖它们与服务器上的日期设置相同。

一种方法是传递自1月1日 st 1970以来经过的毫秒数来创建日期实例:

<script type="text/javascript">
    var dteActualStartTime = new Date(<%=(DateDiff("s", "1/1/1970", dteActualStartTime)) * 1000%>);
    alert("date from server: " + dteActualStartTime);
</script>

这样你不关心客户端机器是否有dd/mm/yyyymm/dd/yyyy或其他任何东西 - 你传递纯数字并让客户端机器解析它。