-1

我正在使用 jQuery 并想格式化日期。我不想为 jQuery 导入另一个插件。我找到了一个适用于 JavaScript 的解决方案,即

var now = new Date(); 

var curr_date = d.getDate();

var curr_month = d.getMonth();

curr_month++;

var curr_year = d.getFullYear();

$('##optionButtons').append('<a href="##"class="btn">' 
+ curr_date + "-" + curr_month + "-" 
+ curr_year + '</a> </ br>');

但是,当我添加下面示例中显示的日期时,我收到以下错误,为什么?

var d = value.CREATED;

var curr_date = d.getDate();

var curr_month = d.getMonth();

curr_month++;

var curr_year = d.getFullYear();

$('##optionButtons').append('<a href="##">' 
+ curr_date + "-" + curr_month + "-" 
+ curr_year + '</a> </ br>');   

错误#################### d.getDate 不是一个函数##################### ######

“value.CREATED”的值为 2012 年 10 月 25 日 00:00:00+0000

4

3 回答 3

1

我建议您从服务器以毫秒为单位发送日期,然后在 javascript 中将日期对象创建为 new Date(milliseconds)。

请参阅此处的参考:http: //www.w3schools.com/js/js_obj_date.asp

或者

var d = new Date(value.created); //new Date('October, 25 2012 00:00:00+0000')

编辑:考虑到你的 value.created 是一个字符串,我可以在这里的DEMO中解析它。

我希望这会奏效。

于 2012-10-25T11:04:52.287 回答
0

代码:var d = value.CREATED;不(以某种方式)返回 a Date。这就是为什么你调用它的一个函数var curr_date = d.getDate();是非法的。如果您在示例中显示变量value的来源,我们也许能够找到错误。

于 2012-10-25T11:08:57.700 回答
0

您使用的日期格式无效。

var d = new Date('October, 25 2012 00:00:00');
于 2012-10-25T11:11:04.023 回答