我从WebAPI接收到具有以下属性的JSON对象:
"BirthDate": "2018-02-14T15:24:17.8177428-03:00",
Run Code Online (Sandbox Code Playgroud)
HTML:
<input type="date" v-model="BirthDate" />
Run Code Online (Sandbox Code Playgroud)
我使用VueJS绑定了该对象,但是VueJS在控制台中给出了以下消息:
The specified value "2018-02-14T15:24:17.8177428-03:00" does not conform to the required format, "yyyy-MM-dd".
Run Code Online (Sandbox Code Playgroud)
在这种情况下,唯一相关的部分是2018-02-14,我可以舍弃其他信息。
我试图创建一个双向过滤器以将该日期时间转换为所需的格式,但没有成功。查看VueJS双向过滤器
如何将日期/时间格式转换并绑定到HTML日期输入所需的日期格式?
当我将 Javascript 日期传递给 JAX-RS 服务时,我收到:
我传递给后端的信息来自我映射到 javascript Date 对象上的 Angular Material Datepicker 组件。
我知道该字符串具有后端不相关的信息,但我不知道如何在调用 POST 之前传递正确/修改的值。
我应该传递 String 而不是 Date 对象吗?这是正确的方法吗?
有没有办法将格式为“2018-06-04T22:00:00.000Z”或“2018-06-05T00:00:00.000Z”的日期传递给LocalDate和LocalDateTime?
我使用 LocalDate 和 LocalDateTime 因为我不想处理时区。即使我更改时区,该值也应该始终相同。
在我遇到问题之前,因为服务器和客户端之间存在 1 小时的差异。因此,当我过去从 Web 服务器选择日期时,客户端可能会在组件上看到前一天,因为它从午夜开始返回 1 小时。
我试过这段代码,但它给了我错误格式的日期:
function randomDate(start, end) {
return new Date(start.getTime() + Math.random() * (end.getTime() - start.getTime()));
}
randomDate(new Date(2012, 0, 1), new Date())
Run Code Online (Sandbox Code Playgroud)
返回这样的日期
Fri Dec 16 1988 06:20:22 GMT+0000 (GMT Standard Time)
Run Code Online (Sandbox Code Playgroud)
我如何将其更改为“yyyy-mm-dd”格式?所以例如
1985-09-22
Run Code Online (Sandbox Code Playgroud) 我只是想阻止用户输入或禁用 input 中的先前日期datetime-local,有没有办法做到这一点?
这是我所做的,不幸的是这段代码没有任何反应:
<input type="datetime-local" class="form-control col-md-6" name="book" required>
<script>
var today = new Date().toISOString().split('T')[0];
document.getElementsByName('book')[0].setAttribute('min', today);
</script>Run Code Online (Sandbox Code Playgroud)