大家好我试图手动为html日期输入字段分配值。但它没有用。
首先,我尝试按照普通输入框
的方式传递值<?php $newDate2 = '03/31/2014'; ?>
<form name='RegForm' method='GET'>
<input type="date" name="sdate" id="sdate" value="<?php echo $newDate2; ?>" required>
</form>
当它没有工作时,我尝试使用这样的Javascript宽度:
<head>
<script type="text/javascript">
function showInvoiceDate(){
var mYDate = new Date('2011-04-11');
alert(mYDate);
document.getElementById("sdate").value=mYDate;
}
</script>
</head>
<body onload="showInvoiceDate();">
<form name='RegForm' method='GET'>
<input type="date" name="sdate" id="sdate" required>
</form>
</body>
正在提示该功能。因为“提醒”框显示myDate
的值,但日期框的值未进行更改,但仍为mm/dd/yyy
那我做错了什么?
答案 0 :(得分:3)
日期应采用YYYY-MM-DD
格式。单位数天和月应填0,1月为01。
表示日期的字符串。 值:[RFC 3339]中定义的有效完整日期,附加限定年份组件是四位或更多位数,表示大于0的数字。
PHP - 代码应为:
<?php $newDate2 = "2014-03-31"; ?>
<form name='RegForm' method='GET'>
<input type="date" name="sdate" id="sdate" value="<?= $newDate2; ?>" required>
</form>
经过测试,对我有用。
Javascript - 您需要构建日期字符串,然后设置它,如:
var dateString = mYDate.getUTCFullYear() + "-" + (mYDate.getUTCMonth()+1) + "-" + mYDate.getUTCDate();
document.getElementById("sdate").value = dateString ;
我没有测试JS版本,但它应该可以工作。