表单自动填充时间和日期

时间:2020-07-17 13:21:15

标签: javascript php html datetime

我正在尝试自动填写HTML表单的时间和日期,并且需要使用UTC时间。我想使用PHP或javascript。

<form>
<label>Date</label>
<input type="date" name="date" value="<?php echo date('Y-m-d'); ?>">
<br />
<label>Time</label>
<input type="time" name="time"/ value="">
</form>
预先感谢。

2 个答案:

答案 0 :(得分:0)

您只需要在时间输入中添加<?= date('H:i'); ?>

<input type="time" name="time"/ value="<?= date('H:i'); ?>">

说明:

<?=date('H:i');?> 是一样的: <?php echo date('H:i');?>

“ H”是24小时格式的小时,“ i”是前导零的分钟。

您可以查看documentation来设置日期格式的不同可能性。

答案 1 :(得分:0)

使用JavaScript,Date对象用于检索时间和日期。 要分别用时间和日期预先填充两个输入字段,您首先需要获得对它们的引用,以便能够使用JavaScript对其进行操作。

两个输入字段均设置了 name 标签,因此我们可以使用它。

var inputElementTime=document.getElementsByName("time")[0];
var inputElementDate=document.getElementsByName("date")[0];

函数getElmentsByName返回一个数组,因为可以有多个具有相同名称的元素。在您的情况下,只有一个,因此我们可以通过追加[0]来直接使用数组的第一个元素。

现在我们需要获取实际日期:

var now=new Date();

输入元素.value属性需要以特殊方式设置格式。 时间应该是 hh:mm ,日期应该是 yyyy-mm-dd

注意:hh,mm和dd始终需要两位数字。如果是六月初,则必须添加前导零,例如 01

这是完整的示例(只需单击“运行代码段”):

var now = new Date();
var inputElementTime = document.getElementsByName("time")[0];
var inputElementDate = document.getElementsByName("date")[0];
inputElementTime.value = ("0" + now.getHours()).slice(-2) + ":" + ("0" + now.getMinutes()).slice(-2);
inputElementDate.value = now.getUTCFullYear() + "-" + ("0" + now.getMonth()).slice(-2) + "-" + ("0" + now.getDate()).slice(-2);
<form>
  <label>Date</label>
  <input type="date" name="date">
  <br />
  <label>Time</label>
  <input type="time" name="time">
</form>