2

在 IE 中使用此代码:

if(!Date.prototype.toISOString) Date.prototype.toISOString = function(){
    var padZero = function(str, len){while(str.length < len) str = '0' + str; return str;};

    var ret = padZero(''+this.getUTCFullYear(), 4)
        + '-' + padZero(''+this.getUTCMonth(), 2)
        + '-' + padZero(''+this.getUTCDate(), 2)
        + 'T' + padZero(''+this.getUTCHours(), 2)
        + ':' + padZero(''+this.getUTCMinutes(), 2)
        + ':' + padZero(''+this.getUTCSeconds(), 2)
        + 'Z';
    alert(ret);
    return ret;
}

我收到以下错误..

执行 urlrewrite 查询时出错:err:FORG0001: 类似日期时间的值 '2012-00-05T09:09:46Z' 的非法词法形式 Month 字段的值 0 无效。[第 42 行第 9 栏]

我已经尝试了对月份参数的多次修复,但似乎无法正确解决。所以,任何帮助都会得到很大的帮助。

顺便说一句:他们上面的代码在 Firefox 中运行良好..去图,对吧?

4

1 回答 1

2

getUTCMonth()从零开始,0一月也是。您可以将 1 添加到它以形成您的日期字符串:

+ '-' + padZero(''+(this.getUTCMonth()+1), 2)

来自MDN 文档

getUTCMonth - 根据通用时间返回指定日期的月份 (0-11)。

于 2013-01-04T09:27:54.493 回答