我有mysql查询,它返回一些日期的数据。当我请求ajax请求时,它会将时间戳添加到我的响应中。
有没有办法让它不会在响应中自动添加时间戳。
jQuery.ajax({
url: "/getdata",
type: "POST",
data: { },
success: function (result, textStatus, jqXHR) {
console.log(result)
}
});var query = "SELECT SUM(`id`) as `total`,DATE(`log_date`) as `log_date` from `mytable` Group by `log_date`"这是我的响应,将T18:30:00.000Z添加到日期的末尾:
[
RowDataPacket { total: 1, log_date: 2020-11-09T18:30:00.000Z },
RowDataPacket { total: 10, log_date: 2020-11-10T18:30:00.000Z },
]谢谢
发布于 2020-11-18 18:58:59
这不是jQuery的问题,而是JS和PHP的混合以及如何在数据库中存储日期值的问题。
JS Date对象让也包含时间值。没有仅限日期的数据类型。因此,将使用返回的日期解释来自PHP的响应,并向其添加00:00:00时间以保持有效性。
我可以从你的个人资料中看到你在印度,所以你的时区偏移是+ 5:30,因此JS假设日期是你当地的格式,并尝试通过减去5:30将其转换为UTC。因此,结果日期比16:30:00的实际值早1天。
为了解决这个问题,我建议你以完整的ISO8601 format格式返回日期,包括时间和偏移量,这样就不会有JS试图克服的歧义。
https://stackoverflow.com/questions/64891527
复制相似问题