1 回答
TA贡献1773条经验 获得超3个赞
您不需要“setInterval”来执行此操作
当按钮元素位于表单元素中时,它默认使用发送功能,在本例中该功能会刷新页面。因此,字段的内容一旦被填充就被清理。
我删除了表单元素。现在,当单击按钮时,input将获取元素的内容并显示在p元素中
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<input id="mail" type="text" name="email" value="user@example.com">
<button id="btn" onclick="abc()">click On me</button>
<p id='text'></p>
<script>
function abc() {
var mail = document.getElementById('mail');
var text = document.getElementById('text');
text.innerText = mail.value;
}
</script>
</body>
</html>
带 setInterval 的版本
按下按钮后“setInterval”将被激活。每 100 毫秒,它就会从输入元素中获取所有信息并将其填充到 P 元素中。您可以在字段中书写,文本将立即出现在另一个元素中。为了在按下按钮后不累积空格,我在代码中设置了一行来停用按钮
function abc() {
document.getElementById('btn').setAttribute("disabled", true);
setInterval(() => {
var mail = document.getElementById('mail');
var text = document.getElementById('text');
text.innerText = mail.value;
}, 100);
}
<input id="mail" type="text" name="email" value="user@example.com">
<button id="btn" onclick="abc()">click On me</button>
<p id='text'></p>
添加回答
举报