JS 输出到 html 输入

JS output to a html input

需要时间脚本的输出来更改输入字段的输入但无法弄清楚。


<script>
function addZero(i) {
if (i < 10) {
    i = "0" + i;
}
return i;
}

function checkouttimeFunction() {
var d = new Date();
var x = document.getElementById("demo");
var h = addZero(d.getHours());
var m = addZero(d.getMinutes());
var s = addZero(d.getSeconds());
x.innerHTML = h + ":" + m + ":" + s;
var elem = document.getElementById("cout");
elem.value = document.getElementById("demo");
}
</script>

我假设您希望在输入字段 elem 中显示 x 的内部HTML 文本。

您不能将 'value' 属性设置为 HTML 元素,但您可以将其设置为所需的文本(例如时间)。

<script>
function addZero(i) {
if (i < 10) {
    i = "0" + i;
}
return i;
}

function checkouttimeFunction() {
var d = new Date();
var h = addZero(d.getHours());
var m = addZero(d.getMinutes());
var s = addZero(d.getSeconds());
var elem = document.getElementById("cout");
elem.value = h + ":" + m + ":" + s;
}
</script>

看起来 checkouttimeFunction() 中的最后一行你想做的是:

elem.value = x.innerHTML;

除了:

elem.value = document.getElementById("demo");

当您尝试将 value 设置为 DOM 元素时。

Fiddle Example

你应该改变

elem.value = document.getElementById("demo");

elem.value = document.getElementById("demo").innerHTML;

这应该能满足您的需求。因为您需要元素的内容,而 document.getElementById() 只会给您元素,它将以对象的形式出现。

希望对您有所帮助。