2014-11-05 74 views
0

即时通讯使用jquery做日期过滤器,当我发送日期到服务器即时通讯发送一个不同的日期,从我在模型中有。可以说我选择2014年10月27日至2014年10月27日。jquery datepicker返回前一天

var fromDate = new Date($scope.date.from); //Mon Oct 27 2014 00:00:00 GMT+0200 
var toDate = new Date($scope.date.to); // Mon Oct 27 2014 00:00:00 GMT+0200 

和向服务器发送的数据是:

2014-10-26T22:00:00.000Z 
2014-10-26T22:00:00.000Z 

这是前一天。为什么发生这种情况?使用

+0

你把它发送到服务器之前将其转换为UTC日期格式? – 2014-11-05 08:14:37

+0

不,这是我唯一的代码。我需要添加什么? – Bazinga 2014-11-05 08:15:17

+0

创建一个小提琴 – 2014-11-05 08:16:56

回答

0

所以答案,使这项工作是这样的:

var DateFrom = new Date(Date.UTC(fromDate.getFullYear(),fromDate.getMonth(),fromDate.getDate(),0,0,0,0)); 

     var DateTo = new Date(Date.UTC(toDate.getFullYear(),toDate.getMonth(),toDate.getDate(),23,59,59,0)); 
0

请尝试以下

var fromDate = new Date($scope.date.from).toUTCString(); 

有与时区差异的问题。

+0

当我做这我得到:太阳,2014年10月26日22:00:00 GMT仍然不工作 – Bazinga 2014-11-05 08:22:32

+0

@anguLaravel,你会得到UTC时间。将其转换为您的TimeZone与服务器代码.. – Anujith 2014-11-05 08:24:02

+0

您也正在发送2014-10-26T22:00:00,这是2014年10月26日,22.00 – Indra 2014-11-05 08:24:18