我有一个HTML日期输入类型,我想用JavaScript以编程方式操作它。我只是没有得到它。使用javascript在HTML输入(日期)类型中操作日期
我看到操纵日期本身的最普遍接受的方法是这样的:
c = document.getElementById("date1").valueAsDate
我可以设置输入的日期:
var c = new Date();
c.setDate(c.getDate() + 1);
我可以从输入获取日期:
document.getElementById("date2").valueAsDate = c
我可以操纵日期c
:
c.setDate(c.getDate()+1)
使用c
作为临时值,我能够相对于操纵一个日期对象的值到另一:
c = document.getElementById("date1").valueAsDate
c.setDate(c.getDate()+1)
document.getElementById("date2").valueAsDate = c
但没有操纵元件本身的量我能够转移日期从一个对象到另一不使用的临时变量。
例如,尽管:
c = document.getElementById("date1").valueAsDate
和
document.getElementById("date2").valueAsDate = c
都是有效的,但它们不是直接可操纵:
document.getElementById("date1").valueAsDate
= document.getElementById("date2").valueAsDate
以上是INVALID
我似乎亲近的时间,但我总是需要一个临时变量。
我想我有2个问题:
什么我不使用这些值,使他们不可转让(他们之间)理解?
什么是“干净的”代码,以从文档元素的值,通过增加一天,把它发回
据我所知道的,[* HTML规范*](https://www.w3.org/TR/html5/forms.html#dom-input-valueasdate)说你应该能够从一个* valueAsDate *直接指定给另一个。对日期输入的支持不强,可能很少有实现完全支持所有相关功能。你似乎已经有了“最干净的代码”,只是把它变成一个函数。 – RobG
@RobG我会*期待*你可以,但没有任何削减和改变它的周围会得到它的工作。最后,我采用了三线方法,但如果你能在一个非直觉的线上工作,我会很感激它......但我正尽我所能去做最好的ROFL – Madivad