Javascript onclick 将文本放入文本字​​段

Javascript onclick put text into an text field

大家好,我的 onClick 事件没有将日期放入文本输入字段。

<input class="span2" id="datum" name="datum" type="date">
<button class="btn" type="button" onclick="datum()">Heute</button>

<script type="text/javascript">
function datum() {
    var datum = new Date();
    var tag = datum.getDate();
    var monat = datum.getMonth();
    var jahr = datum.getFullYear();
    var element = document.getElementById("datum");
    element.innerHTML = tag + "." + monat + "." + jahr;
}
</script>
  1. 使用 .value 而不是 .innerHTML
  2. 尽量不要使用相同的名称、id和函数名
  3. 月份加一。 JS 月份是从 0 开始的。
  4. 用前导 0 填充适当的日期
  5. type=date 更改为 type=text 因为您想使用不同的格式

    Is there any way to change input type="date" format? The HTML5 date input specification [1] refers to the RFC3339 specification, which specifies a full-date format equal to: yyyy-mm-dd.

像这样

element.value = tag + "." + (monat+1) + "." + jahr;

function pad(num) {
  return String("0" + num).slice(-2);
}
function heute() {
    var datum = new Date();
    var tag = datum.getDate();
    var monat = datum.getMonth();
    var jahr = datum.getFullYear();
    var element = document.getElementById("datum");
    element.value = pad(tag) + "." + pad(monat+1) + "." + jahr;
}
<input class="span2" id="datum" name="datum" type="text" placeholder="tt.mm.jjjj">
<button class="btn" type="button" onclick="heute()">Heute</button>

<input class="span2" id="datum" name="datum" type="text" value="<?php echo date("d.m.Y"); ?>" required>
<button class="btn" type="button">Heute</button>

我用 PHP :P