Javascript 服务器上的日期时间格式

Javascript 服务器上的日期时间格式,javascript,datetime,model-view-controller,Javascript,Datetime,Model View Controller,我有多选复选框来选择报告日期。用户正在选择一个或多个报告日期。我正在使用JavaScript获取选定日期: var dateTime = new Date($(this).val()).toJSON(); 我正在将所选日期传递给控制器并创建查询: foreach (var reportDate in reportDates) { predicateReportDate = predicateReportDate.Or(p => p.LastUpdateDate == reportD

我有多选复选框来选择报告日期。用户正在选择一个或多个报告日期。我正在使用JavaScript获取选定日期:

var dateTime = new Date($(this).val()).toJSON();
我正在将所选日期传递给控制器并创建查询:

foreach (var reportDate in reportDates)
{
   predicateReportDate = predicateReportDate.Or(p => p.LastUpdateDate == reportDate.ReportDate);
}
在本地一切正常,但我在将页面部署到服务器时发现了日期格式的问题

本地日期时间格式如下

“2017-04-21 00:00:00”

但在服务器上,我看到了完全不同的日期:

2017年4月20日下午6:00:00

这会导致筛选器在服务器上无法正常工作(不会返回结果),因为没有包含该日期的报告

两者:

最后更新日期

reportDate.reportDate

是日期时间(不是字符串)

你能帮我统一日期格式吗?

我所做的是:

我替换了从过滤器中读取日期的行:

var dateTime = new Date($(this).val()).toJSON();


似乎
toJSON()
正在将日期(我使用的是UTC)转换为本地服务器时区。

您是说一天的时间间隔为1天,还是需要清除时间部分?请尝试检查每个日期对象的时区。它们可能指的是完全相同的时间点,但表示方式会根据代码运行的本地时区进行调整。这可能不是最佳解决方案,但我以前使用过它来确保日期匹配。javascript
var date1=new Date();日期1.设定时间(0,0,0,0)您可能需要使用UTC时间来确保它们在客户端和服务器上匹配注意拼写JavaScript以避免搜索与Java冲突。
var dateTime =  $(this).val().split(' ')[0];